%d
十进制有符号整数
%u
十进制无符号整数
%f
浮点数
%s
字符串
%c
单个字符
%p
指针的值
%e
指数形式的浮点数
%x,
%X
无符号以十六进制表示的整数
%0
无符号以八进制表示的整数
%g
自动选择合适的表示法
%c格式对应的是单个字符,%s格式对应的是字符串。
1.%c格式对应的是单个字符。所以在输入多个字符的时候,它只会读取第一个字符,之后的字符是无法读入完成任务的,那么也就是说,只进行一次读取工作的C函数表达方式。
2.%S格式对应的是字符串。S通常表示复数,也是多个的意思,那么在字符中表示字符串。
输入:
1、赋值
%c输入函数只会对一个字节空间赋值,而%s会一直赋值,直到输入中遇到空白字符为止。
2、地址符
输入的时候scanf("%c", &a);这里的&不能少,而scanf("%s",s);这里不能有&符号。
输出:
1、长度
%c只能输出一个字符,%s输出的是一串字符,直到某一个字节内存的元素为字符'\0'时,输出此字符并且寻址结束。
扩展资料
转换说明符
1、%a(%A):浮点数、十六进制数字和p-(P-)记数法(C99)
2、%c:字符
3、%d:有符号十进制整数
4、%f:浮点数(包括float和doulbe)
5、%e(%E):浮点数指数输出[e-(E-)记数法]
6、%g(%G):浮点数不显无意义的零"0"
7、%i:有符号十进制整数(与%d相同)
8、%u:无符号十进制整数
9、%o八进制整数
10、%x(%X):十六进制整数0f(0F)
11、%p:指针
12、%s:字符串
13、%%:"%"
格式字符串
语法:〔标志〕〔输出最少宽度〕〔.精度〕〔长度〕类型
"%-md" : 左对齐,若m比实际少时,按实际输出。
"%m.ns" : 输出m位,取字符串(左起)n位,左补空格,当n>m or m省略时m=n
"%m.nf" : 输出浮点数,m为宽度,n为小数点右边数位
"%3.1f" : 输入3852.99 输出3853.0