左对齐还是右对齐是在有对齐的需要的时候才有意义的。由于你并没有指定每个int值输出的长度,因此int值有多长就会输出多长,此时没有讨论左对齐或者右对齐的意义。
你只有加上%10d的时候(10只是我举的例子),这时候限定了int值输出长度为10,而12345这个int值的长度为5,这时候就有左对齐还是右对齐的分别了。
#include <stdio.h>
void main(){
printf("%10d\n%10d\n%10d\n",12345,1234,123);
}
如果你使用%-10d这时候就是:
以下程序段的执行结果是()。
double x;x=218.82631;
printf("%-6.2e\n",x);
结果:2.19e+002
小数点也要算一位,2.19是4位,00补充2位,共六位,其中 .2表示有两位小数点,e表示指数形式,002的2表示10的2次方。
%:表示格式说明的起始符号,也是转义符号,有一题 printf(“%%%%”)输出几个?答案输出%% 两个
-:有-表示左对齐输出,如省略表示右对齐输出
0:有0表示指定空位填0,如省略表示指定空位不填
m.n m指域宽,即对应的输出项在输出设备上所占的字符数。
n指精度。用于说明输出的实型数的小数位数。没有指定n时,隐含的精度为n=6位
e格式表示以指数形式输出实数
那么这题的意思是以左对齐、指数形式、总长度m =6、小数n=2两位 输出