background image

   %o             无符号以八进制表示的整数

   %g%G         自动选择合适的表示法

━━━━━━━━━━━━━━━━━━━━━━━━━━

printf 的附加格式说明字符

字符

说明

l

用于长整型数或双精度实型,可加在格式符 dox和 f
前面

m(代表一个正整数)

数据最小输出显示宽度

n(代表一个正整数)

对实数,表示输出 位小数;对字符串,表示截取的字
符个数。

-

输出的数字或字符在域内向左靠,即位数不足时右补空

格。

   说明:

在输出时,对不同类型的数据要使用不同的格式字符。常用的有以下几种:

1格式符。用来输出十进制整数。

 %d。按十进制整型数据的实际长度输出。

 %md为指定的输出字段宽度。如果数据的位数小于 m,则左端补以空格,若

大于 m,则按实际位数输出。例如:

printf("%4d,%4d",a,b);

若 a=123b=12345,则输出结果为

 _123,12345

 %ld。输出长整型数据,例如

long a=135790

printf"%ld",a;

如果用%d 输出,就会发生错误,因为整型数据的取值范围为-32768~32767。对于

long 型数据应当用%ld 格式输出。对长整型数据也可以指定字段宽度,如将上面

printf

函数中的 %ld”

改为 %8ld”,则输出为

_ _ 135790

一个 int 型数据可以用%d %ld 格式输出。

2格式符。以八进制整数形式输出。由于是将内存单元中的各位的值

0/1)按八进制形式输出,因此输出的数值不带符号,即将符号位也一起作为八

进制数的一部分输出。例如: