1.★printf函数(格式输出函数)
*printf函数的一般格式
格式:printf( 格式控制,输出表列);
格式控制:用双引号括起来的字符串,包含两种信息
格式说明:%|修饰符|格式字符,指定输出格式普通字符:原样输出
输出表列:要输出的数据,可以是变量或表达式,可以没有,多个时以“,”分隔)
例如:
printf(“%d %d”, a,b) ;
printf(“a=%d b= %d\n”, ab)
printf函数的另外一个特点就是可以同时输出多个类型的数据值。
2.格式字符
d格式符:输出十进制整数,有3种用法
%d格式:按数据实际长度输出,数据范围-32768~32767。
%md格式:m指定输出字段的宽度
数据位数小于m,左端补空格,反之按实际输出。
int a=123 ,b=12345 ; 123 12345
printf(“a=%4d %4d ”, a, b);
%ld格式:输出长整型数据
可以用%mld格式指定输出列宽 long a=135790
printf(%8ld printf(“%ld \n", a);",a);135790__135790
注 m是正数,右靠齐;m是负数,左靠齐。
3.o格式符:八进制输出整数
是将内存中的二进制位整个按八进制输出,所以输出值没有符号。可以指定输出宽度%mo,长整型可以用%lo格式输出。。
x格式符: 十六进制输出整数
同o格式符,无符号,即无负十六进制数。
可以指定输出宽度%mx,长整型可以用%l格式输出。
u格式符:十进制输出unsigned型数据
int型可以用%u格式输出,unsigned型也可以用%d、%o和%x格式输出。
4.f格式符:输出实数 例 2 %f格式输出实数时的有效位数
e格式符: 指数形式输出实数
%e格式:不指定m和n,小数6位,指数部分共5位,其中e和指数符号各1位,指数值3位。
%f格式:可以有非有效数字输出,因为单精度有效位7位,双精度16位。
%m.nf格式:占m列 其中n位小数,左补空格
% -m.nf格式:右补空格
注 %e格式符的域宽和%f格式符一样
4.格式字符表
d 十进制整数 int a=100;printf(“%d”,a); 100
x,X 十六进制无符号整数 int a=255;printf(“%x",a); ff
0 八进制无符号整数 int a=8;printf(“%o",a); 10
u 不带符号十进制整数 int a=100;printf(“%u”,a); 100
C 单一字符 char a=65;printf(“%c",a); A
S 字符串 printf(“%s",“ABC"); ABC
e,E 指数形式浮点小数 float a=567.789;printf(“%e",a); 5.677890c+002
f 小数形式浮点小数 float a=567.789;printf("%f",a); 567.789000
g,G c和f中较短一种 float a=567.789;printf(“%g",a); 567.789
百分号本身 printf(“%%"); %