printf ("%2d\n",a);2是什么意思?

王朝知道·作者佚名  2009-07-10
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
參考答案:

表示提供2个字符的空间用于输出a,如:(“_”表示空格)

a=1时,输出:_1

a=10时,输出:10

a=100时,输出:100

说明:a=1时,a只有1位数,因此在前面补充空格到2位(右对齐,如想要在后面补充空格的,即左对齐,只须把“%2d”改为“%-2d”即可);

a=10时,a刚好是2位数,直接输出便是了;

a=100时,a有3位数,超过了提供的空间,但并没有缩减,还是直接输出了。

再如:printf("%-3d\n",a);

a=2时,输出:2__

a=20时,输出:20_

a=200时,输出:200

a=2000时,输出:2000

如果a是浮点型,你可能会碰到这样的形式:printf("%-6.3f\n",a);

其中,“-”号还是表示左对齐,6表示提供6个字符空间用于输出,小数点后面的3表示小数部分输出3位,如:

(1) a=1.3125时,输出:1.312_

(2) a=1.2时,输出:1.200_

(3) a=1.12时,输出:1.120_

(4) a=10.123时,输出:10.123

(5) a=100.125时,输出:100.125

说明:

如果小数部分超过3位,则会缩减到3位,如(1);

如果小数部分低于3位,则会补充0到3位,如(2)和(3) ;

如果小数部分通过缩减或补充之后a的位数还是超过了6位,则还是直接输出了,如(5)。

从上面还可以看出,小数点是占用1位的,而小数部分则肯定占用3位,剩下2位由整数部分占用;整数部分是不会被缩减的,如(5)。

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航