printf("%-9d %-9d %-9d %-9d\n",a1,a2,a3,a4);
%-9d表示以十进制输出,左对齐,宽度最小为9个字符。
printf 格式控制字符的完整形式如下:
%[flags][width][.precision]type
[xxx] 并不是C语言规定的格式,只是一种习惯写法,表示此处的内容可有可无,后面会经常见到这样的写法。
1) type 也就是以什么类型输出,比如 %d、%f、%c,type 就分别对应 d、f、c;%-9d中 type 对应 d。type 必须有。
2) width 表示最小输出宽度,也就是占几个字符的位置;%-9d中 width 对应 9。
对于整数和小数,默认右对齐,不足的宽度以空格补齐,例如:
printf("%10d%12f", 234, 9.8);
输出结果为:
234 9.800000
234 前面共有7个空格,9.8 前面有4个空格。
3) .precision 表示输出精度。
对于 %d,.precision 表示的其实是最小输出宽度,与 width 不同的是,不足的宽度以 0 补齐,例如:
printf("%.10d\n", 4309);
输出结果为:
0000004309
对于 %f,.precision 表示小数的位数,不足以 0 补齐,也就是精度,例如:
printf("%.10f %.3f\n", 23.988, 2.9328745);
输出结果为:
23.9880000000 2.933
4) flags 是标志字符,%-9d中 flags 对应-。
网友评论