C语言中输出方式为“%5d”是什么意思?

如果输出int型的1,结果是什么样的?
还有如果没有百分号%,又会怎么样?
谢谢高手!

输出方式为“%5d”表示按5位的固定位宽输出整型数值。如果不足5位,则在前面补空格;超过5位,则按实际位数输出。


下面举例说明其含义。

int a=123;
int b=123456;
printf("%5d\n", a); // 输出 _ _ 123  ( _ 表示空格),不足5位,在前面补空格
printf("%5d\n", b); // 输出123456,超过5位,按实际位数输出

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-21
1 %5d表示按十进制5位宽度输出,输出1时,会在1前面加4个空格。
2 如果没%,5d原样输出。本回答被提问者采纳
第2个回答  2011-03-21
%5d表示输出的十进制整数占5行,比如输出1,就是“ 1”,1前面有四个空格位;
如果没有%,就会按原样输出“5d”,不会输出想要的数字。
第3个回答  2011-03-21
"%5d"表示十进制的五位输出 如果输出为1 则前面补四个空格,如果是11那么前面补三个空格;如果超过五个 就越界了;因为C中最大数为65535 ;printf("%5d",a);去掉%就是错的,如果printf("5d");就原样输出。
第4个回答  2011-03-21
表示列宽为5
如果输出int型的1将输出1,但如果是123456 将输出12345。
如果没有百分号将输出 5d .
相似回答