关于printf()输出格式

  各位看官,仔细看了哈!

1 # include <stdio.h>
2 main()
3 {
4     int a=6;
5     printf("%6d",a);
6 }

  显示结果是:

  总结:

 printf("%6d",a);  //通过上面输出结果看出:右对齐,共占6位,前5位空格。
==================上面是第一种情况================================
1 # include <stdio.h>
2 main()
3 {
4     int a=6;
5     printf("%06d",a);
6 }

  显示结果是:

  总结:

 printf("%06d",a); // %0d ===>表示右对齐,占6位,前面空格的地方用0填充。
==================上面是第二种情况================================
1 # include <stdio.h>
2 main()
3 {
4     int a=6;
5     printf("*%-6d*",a);
6 }

  显示结果:

  

  总结:

printf("*%-6d*",a); //%-6d  =====>表示左对齐,占六位,后面填补空格。

如果:
1 # include <stdio.h>
2 main()
3 {
4     int a=6;
5     printf("*%-06d*",a);
6 }

  结果显示:

 

 printf("*%-06d*",a);   // %-06d  =====> 左对齐,占六位,左面没有空格,所以无法填充0

 

  

 
 
原文地址:https://www.cnblogs.com/sunlei0632/p/8340387.html