2023年4月18日发(作者:万豪集团董事长)c语⾔输出格式⼤全n,C语⾔输⼊输出格式符
C语⾔输⼊输出格式符
printf函数(格式输出函数)
1.⼀般格式
printf(格式控制,输出表列)
例如:printf("i=%d,ch=%cn",i,ch);
说明:
(1)“格式控制”是⽤双撇号括起来的字符串,也称“转换控制字符串”,它包括两种信息:
①格式说明:由“%”和格式字符组成,它的作⽤是将输出的数据转换为指定的格式输出。
②普通字符,即需要原样输出的字符。
(2)“输出表列”是需要输出的⼀些数据,可以是表达式
(3)printf函数的⼀般形式可以表⽰为
printf(参数1,参数2,…脸红发热是怎么回事
…,参数n)
功能是将参数2~参数n按参数1给定的格式输出
2.格式字符(9种)
(1)d(或i)格式符。⽤来输出⼗进制整数,有以下⼏种⽤法:
①%d,按整型数据的实际长度输出。
②%md,m为指定的输出字段的宽度。如果数据的位数⼩于m,则左端补以空格,若⼤于m,则按实际位数输出。
③%ld(%mld 也可),输出长整型数据。
例如:long a=123456;
printf("%ld",a);
(2)o格式符,以⼋进制数形式输出整数。格式:%o,%mo,%lo,%mlo都可。
(3)x(或X)格式符,以⼗六进制数形式输出整数。格式:%x,%mx,%lx,%mlx都可。
(4)u格式符,⽤来输出unsigned型数据,即⽆符号数,以⼗进制数形式输出。格式:%u,%mu,%lu都可。
参见:li4-3.c
(5)c格式符,⽤来输出⼀个字符。格式:%c,%mc都可。
(6)s格式符,⽤来输出⼀个字符串。格式:%s,%ms,%-ms,%,%-都如何战胜恐惧
可。
参见:li4-5.c
(7)f格式符,⽤来输出实数(包括单、双精度),以⼩数形式输出。格式:%f,%,%-都可。
注意:单精度实数的有效位数⼀般为7村民选举
位,双精度为16位。
参见:li4-6.c
li4-7.c
li4-8.c
(8)e(或E)格式符,以指数形式输出实数。格式:%e,%,%-都可。
(9)g(或G)格式符,⽤来输出实数,它根据数值的⼤⼩,⾃动选f格式或e格式(选择输出时占宽度较⼩的⼀种)。
3.说明
(1)除了X、E、G(⽤⼤写字母表⽰)外,其他格式字符必须⽤⼩写字母;
(2)“格式控制”字符串内可以包含转义字符;
(3)如果想输出字符“%”,则应该在“格式控制”字符串中⽤连续两个%表⽰,如:
printf("%f%%",1.0/3);
(4)格式字符表参见下表
表4.1 printf格式字符
格式字符 说 明
d,i 以带符号的⼗进制形式输出整数(正数不输出符号)
o 以⼋进制⽆符号形式输出整数(不输出前导符0)
x,X 以⼗六进制⽆符号形式输出整数(不输出前导符0x),⽤x则输出⼗六进制数的a~f时以⼩写形式输出,⽤X时,则以⼤写字母输出
u 以⽆符号⼗进制形式输出整数
c 以字符形式输出,只输出⼀个字符
s 输出字符串
f 以⼩数形式张爱玲散文《等》
输出单、双精度数,隐含输出6位⼩数
e,E 以指数形式输出实数
g,G 选⽤%f或%e格式中输出宽度较短的⼀种格式,不输出⽆意义的0
表4.2 printf的附加格式说明字符
字符
说明
字母l
⽤于长整型整数,可加在格式符d、o、x、u前⾯
m(代表⼀个正整数)
数据最⼩宽度
n(代表⼀个正整数)
对实数,表⽰输出n位⼩数;对字符串,表⽰截取的字符个数
(⼆)
c语⾔不提供输⼊输出语句,输⼊输出操作是由c的库函数完成。但要包含头⽂件stdio.h。 putchar( ) 向终端输出⼀个字符 printf( )的格式
字符: ① d格式符 ⽤来输出⼗进制整数 %d 按整型数据的实际长度输出 %md 使输出长度为m,如果数据长度⼩于m,则左补空格,如
果⼤于m,则输出实际长度 %ld 输出长整型数据 ② o格式符 以⼋进制形式输出整数 ③ x格式符 以⼗六进制形式输出整数 ④ u格式符
⽤来输出unsigned型数据,以⼗进制形式输出 ⑤ c格式符 ⽤来输出⼀个字符 ⑥ s格式符 输出⼀个字符串 %s 输出实际长度字符
串 %ms 输出的串占m列,如果串长度⼩于m,左补空格,如果⼤于m,实际输出 %-ms输出的串占m列,如果串长度⼩于电脑配置查询
m,右补空
格, % 输出占m列,但只取字符串有意义的一天
中左端n个字符并靠右对齐 %- m、n含义同上,靠左对齐,如果n>m,则m⾃动取n值 ⑦ f格
式符 以⼩数形式输出实数 %f 整数部分全部输出,⼩数部分输出6位 % 输出数据共占m列,其中有n位⼩数。如果数值长度⼩于m,
左补空格 %- 同上,右补空格 ⑧ e格式符 以指数形式输出实数 %e 系统指定6位⼩数,5位指数(e+002 ) ⑨ g格式符 输出实数,
根据数值⼤⼩,⾃动选f格式或e格式
3.数据输⼊ getchar( ) 从终端输⼊⼀个字符 scanf( 格式控制,地址列表) 标准C scanf中不使⽤%u,对于unsigned型数据,以%d或%o
或%x输⼊。%后的*,⽤来跳过它相应的数据。输⼊数据时不能规定精度如scanf( "%7.2f", &a );是不合法的。
v