满意答案
fnmsth14
2013.04.20
采纳率:49% 等级:12
已帮助:10810人
把程序修改成下面的样子(也就是把printf语句里的空格都去掉),这样可以看得更清楚
main()
{
int a=123;
float b=1.23f;
printf("%-4d\n%4d\n%2d\n%1d\n%d\n",a,a,a,a,a);
printf("%-4.3f\n%4f\n%2f\n%1f\n%f\n",b,b,b,b,b);
}
运行结果如下:
123_ %-md的形式,实际字段宽比指定的小,因此右补空格;
_123 %md的形式,实际字段宽比指定的小,因此左补空格;
123 %md的形式,实际字段宽比指定的大,因此按实际位数输出;
123 同上
123 未指定输出宽度,按实际位数输出
1.230 %-m.nf的形式,保留n位小数,指定m位字段.由于实际位数
比指定宽度大(见注),因此按实际位数输出
1.230000%mf的形式,未指定保留小数位数,默认6位.由于实际位数
比指定宽度大,因此按实际位数输出
1.230000%mf的形式,未指定保留小数位数,默认6位.由于实际位数
比指定宽度大,因此按实际位数输出
1.230000%f的形式,未指定保留小数位数默认6位.未指定输出字段
长度,因此按实际位数输出
(注:浮点形数据中的小数点算占一位)
60分享举报