山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省
( 5 ) e格式符。
用格式声明%e指定以指数形式输出实数。如果不指定输出数据所占的宽度和数字部分的小数位数,许多C编译系统(如VisualC++)会自动给出数字部分的小数位数为6位,指数部分占5列(如e + 002,其中“e”占1列,指数符号占1列,指数占3列)。数值按标准化指数形式输出(即小数点前必须有而且只有1位非零数字)。例如:
printf ( " % e,123.456 );
输出如下:
1.234560 e +002
所输出的实数共占13列宽度(注:不同系统的规定略有不同)。
也可以用“% m. ne”形式的格式声明,如:
printf (”% 13.2e”,123.456 );
输出为
1.23e + 002(数的前面有4个空格)
格式符e也可以写成大写E形式,此时输出的数据中的指数不是以小写字母e表示而以大写字母E表示,如1.23456 E + 002。
( 6 )其他格式符。
C语言还提供以下几种输出格式符。
①i格式符。作用与d格式符相同,按十进制整型数据的实际长度输出。一般习惯用%d而少用%i。
②o格式符。以八进制整数形式输出。将内存单元中的各位的值( 0或1 )按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八进制数的一部分输出。
③x格式符。以十六进制数形式输出整数。
④u格式符。用来输出无符号( unsigned)型数据,以十进制整数形式输出。
⑤g格式符。用来输出浮点数,系统自动选f格式或e格式输出,选择其中长度较短的格式,不输出无意义的0。
综合上面的介绍,格式声明的一般形式可以表示为
% 附加字符 格式字符
以上介绍的加在格式字符前面的字符(如1,m,n,一等)就是附加字符,又称为修饰符起补充声明的作用。