c语言问题,%d %.2d %2d %02d的区别。。。 谁能告诉我这几个之间的细微的区别

如题所述

%d就是普通的输出了,%d 是输出十进制整数 d是decimal的缩写

% 2d是将数字按宽度为2,采用右对齐方式输出,如果数据位数不到2位,则左边补空格。

%02d:默认情况下,数据数据宽度不够2位是用空格填补的,但是因为2d前面有0,表示,数据宽度不足时用0填补。

%.2d和% 02d一样。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-08-06
%d普通的输出十进制整型。
%.2d是输出最低两位有效数字,比如1,会输出01。
%2d时输出宽度为最低为2的十进制整型,比如1,会输出 1,默认右对齐。
%02d就是输出宽度为2的十进制整型,宽度不够0来凑,比如1,会输出01。
%02d和%.2d的区别如下:

printf("%6.4d\n",312);
输出结果为 0312,宽度为6,有效数字为4位。其中区别,仔细品味。
第2个回答  推荐于2017-12-15
%d就是普通的输出了
%2d是将数字按宽度为2,采用右对齐方式输出,若数据位数不到2位,则左边补空格
%02d,和%2d差不多,只不过左边补0
%.2d没见过,但从执行效果来看,和%02d一样本回答被提问者采纳
第3个回答  2011-12-22
%d输出整形
%.2d 输出整形时最少输出2位,如不够前面以0占位。如输出2时变成02。200时只输出200;输出浮点型时(%.2f)小数点后强制2位输出,
%2d 输出占2个位置,如输出2时,是一个空格和2,如200时输出200
%02d 是8进制的2。与2d相同。追问

%02d 是输出2位,不知道是最少2位还是什么,但是0表示的是不足2位前面补0,vc环境下测试过。我比较不明白的是%.2d 和%02d这2个输出基本一样。。。

追答

屙 没必要这样子吧。
拿它当个公式记不行吗。
输出整形时最少输出2位,如不够前面以0占位。如输出2时变成02。200时只输出200;输出浮点型时(%.2f)小数点后强制2位输出,

第4个回答  2011-12-23
。。。。。多看看书,谭浩强那本书上写的比较详细。。
相似回答