数据输出
例:
有两个变量:
int i;float x;
i=40; x = 839.21f
-
%d表示的是十进制整数 -
%x表示的十六进制整数 -
%o表示的是八进制整数 -
%u表示的无符号整数 -
%p表示输出数据的内存地址 -
%f表示的定点十进制显示float
什么是定点?什么是浮点?
定点就是小数点的位置是固定的,
浮点就是小数点的位置是不固定的,通常是以(指数形式或者又叫科学计数法的形式)
%d----以十进制显示变量i,并且占用的空间最少
%5d----以十进制显示变量i,同时至少占用5个字符的空间,默认是右对齐,不够的补零。
%-5d----以十进制显示变量i,通知至少占用5个字符的空间,左对齐方式,不够的右边补零。
%5.3d---以定点十进制显示变量i,至少占用5个字符的空间,默认右对齐方式,至少有3位有效数字,因此前面补零来保证有效数字的位数。
%-5.3d----以定点十进制显示变量i,至少占用5个字符的空间,左对齐方式,至少有3位有效数字,因此前面补零来保证有效数字的位数。
- 总结一下:形如
%-m.nd其中d表示的是定点十进制,m表示的最少占用的字符空间,如果不够的话根据对其方式补零。n表示的是至少有效数字的位数,不够前面补零。负号的有无表示的是对齐方式。没有负号表示的是默认右对齐。有则表示默认左对齐。
%f----以定点十进制显示,并占用最少的字符空间。
%10.3f-----以定点十进制显示,并且总共占用10个字符空间,其中小数点后面保留3位有效数字。(记住小数点也占用一个字符)。
- 这里总结一下,对于
%m.nf和%m.nd相比,负号的有无功能是一致的,m和n则各有不同,f结尾的m表示的总共的字符数,d结尾的m表示的是至少的字符数,f结尾的n表示的是保留的小数的位数,d结尾的n表示的是至少有效数字的位数,经过实际的测试,对于形如%m.nf的n的位数最好不要超过m,经过测试发现在m>n的情况下,一切正常,当m<n的时候会发现程序也能输出但是不是预期的结果。同时如果你变量的本身的位数超过了m也会有问题。
%10.3e----以指数的形式显示变量x,总共占用10个字符。其他的规则和%m.nf相似。













网友评论