【C/C++】%2d,%02d是什么意思

1、%d就是普通的输出了

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

3、%02d,和% 2d差不多,只不过左边补0

修饰符 格式说明 意义:

1、M

%md 以宽度m输出整型数,不足m时,左补空格

2、0m

%0md 以宽度m输出整型数,不足m时,左补零

3、m,n

%m.nf 以宽度m输出实型小数,小数位为n位

文章目录%2d,%-2d,%.2d,%02d%2x, %02x, %-2x, %.2x%f, %.nf, %m.nf,%e, %.ne,%m.ne,%2d,%-2d,%.2d,%02d代码语言:javascript复制int main()

{

int a = 1;

printf("%d\n",a);

printf("%2d\n",a);

printf("%.2d\n", a);

printf("%-2d\n",a);

printf("%02d\n",a);

return 0;

}

12345678910如图所示,2表示输出宽度,当大于输出宽度时,数据按原数据输出。当小于输出宽度2时,默认前补空格。如果有-号表示后补空格,.2d与02d相同,都表示不足宽度2时前补0.

%md类似,不在赘述

%2x, %02x, %-2x, %.2xX 表示以十六进制形式输出

02 表示不足两位,前面补0输出;如果超过两位,则实际输出

代码语言:javascript复制#include

int main()

{

printf("%02X\n", 0x325);

printf("%02X", 0x5);

return 0;

}

1234567如果写为 %2x,数据不足两位时,前面补空格输出,不额外补0输出; 如果超过两位,则实际输出

如果写成%-2x,数据不足两位时,后面补空格输出,不额外补0输出; 如果超过两位,则实际输出

如果写成%.2x效果和%02x相同

代码语言:javascript复制#include

int main()

{

printf("%2X\n", 0x325);

printf("%2X\n", 0x5);

printf("%-2X", 0x5);

printf("1");//验证后面有空格

return 0;

}

123456789

%mx类似,不在赘述

%f, %.nf, %m.nf,代码语言:javascript复制#include

int main()

{

double num;

num = 3.1415;

printf("%f\n",num);

printf("%5.2lf\n", num);

printf("%.2lf\n", num);

printf("%.6lf\n", num);

return 0;}

12345678910111213

1.%f不限制宽度和小数点后面的位数

2.%mf表示限制数据输出宽度为m,这个数据宽度还包括小数点

不足宽度的前面补空格。超过宽度的数据正常输出。

eg:%5.2lf——3.14占4个宽度<5所以前面补空格。

3.%.nf——表示小数点后面保留两位小数。

%e, %.ne,%m.ne,%e:以指数形式打印数字

在不指定输出宽度的情况下默认数字部分小数点6位,指数占4位。

注意:小数部分不算小数点,指数e与+/-都算指数位数。

%m.ne:m表示输出列数,n表示有几位小数

当输出列数>m时按原数据输出

%-m.ne表示后面补空格。

%.ne表示不限制输出列数,小数部分保留n位。

代码语言:javascript复制int main()

{

printf("%e\n",123.456);

printf("%.2e\n", 123.456);

printf("%13e\n",123.456);

printf("%-13e", 123.456);

printf("1\n");//验证空格

printf("%3e\n", 123.456);

printf("%13.2e\n", 123.456);

return 0;

}

1234567891011最后,此文章根据大量实验得来,有任何问题,欢迎指出


男性最爱的性行为方式有哪些?
「篩」字笔顺笔画顺序 — 篩的拼音和书写教程