永发信息网

C语言 格式输出 printf("y=%-8ld\n",y); 与printf("y=%-08ld\n",y); printf(&qu

答案:3  悬赏:40  手机版
解决时间 2021-02-05 11:28
  • 提问者网友:酱爆肉
  • 2021-02-04 10:31
与printf("y=%-08ld\,y),y);

输出上有什么区别 特别是 "y=%-08ld\n"
printf(",y),y); printf("y=%-8ld\n"n";y=%+8ld\,y);,y);,y);
printf("y=%-8ld\n"
printf("y=%08ld\n"
printf("-08" "+8" "08" 都代表什么?

我主要是不明白 “08” 中的0是什么意思 还有 为什么“08”和“+08” 输出结果的格式不一样C语言 格式输出 printf("y=%-8ld\n"n"
最佳答案
  • 五星知识达人网友:轻熟杀无赦
  • 2021-02-04 12:06
看看进制!一个是八进制,一个是十进制!
全部回答
  • 1楼网友:末日狂欢
  • 2021-02-04 13:12
"+"代表输出为右对齐(也是默认的);“-”代表输出为左对齐;“8”代表输出占8列宽度;“0”为填充字符,也就是说要输出的东西不够指定的列宽(如题中的8列宽度),就用指定的字符(如题中的“0”)填充到指定的列宽。
  • 2楼网友:神也偏爱
  • 2021-02-04 12:19
-08" "+8" "08" 都代表输出结果占8个字符的位置。 “-”表示左对齐输出,第1,2个的输出格式中有“-”所以是 左对齐输出.h" void main() { int y=9; printf(": y=9 y=9 y=00000009 y= +9 为什么呢? 因为 "stdio;n",y); printf("y=%-08ld\y=%08ld\,左对齐输出就是先输出数字的值再填空格使其满足 占位字符数,若无“-”默认是右对齐输出;n",所以第1,2个输出的结果中先输出数值9,右对齐输出,y); printf("y=%+8ld\n"y=%-8ld\ } 输出结果为; 上面运行结果中如程序: #include ",右对齐输出,y); printf(",由于 "08"所以左边填充0. 第4个输出格式中无“-”;,y),然后在数值9的 右边补上7个空格使其满足占位8字符。 第3个输出格式中无“-”,同属要求输出“+"n"
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯