c语言学习,C语言scanf的学习

最初学C语言时,scanf和sprintf是最先学习的了,当时没有深入的学习,后来也很久没有用过C了,笔试的时候才发现自己真的是什么都忘完了。现在重新学习:
简介:格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的指定格式。
scanf函数会在每一个数据域均有数据,并按回车后结束
用法: int scanf(char *format[,argument,...]); int scanf("格式控制符",地址列表)
常用格式控制符:
%c 读入一个字符
%d 读入十进制整数
%i 读入十进制,八进制,十六进制整数
%o 读入八进制整数
%x 读入十六进制整数
%c 读入一个字符
%s 读入一个字符串
%f 读入一个浮点数
%n 至此已读入值的等价字符数
%[] 扫描字符集合
例子:
1. 整型格式:
(1)scanf("%d%d%d",&a,&b,&c);

(2)scanf("%d %d %d",&a,&b,&c);
(3)scanf("%d,%d,%d",&a,&b,&c);
(1)怎么输入使得可以把三个数分割开来分别给变量a,b,c:空格,tab建,回车分割,可以是一个或多个。
(2)第二个跟第一相同,会自动忽略格式控制符中的空白符
(3)若格式控制符中含有非空白字符,这时输入必须在对应位置输入该非空白字符否则会出错:
例如,若输入1,2 2,则会把1,2分别付给a,b变量,但是c的值就没有。
2.字符格式:
(1)scanf("%c%c%c",&a,&b,&c); ------空格,tab键,回车都会认为是字符并赋值给后面的变量,每个字符是相互分开的
(2)scanf("%c %c %c",&a,&b,&c); ----输入时会忽略空格,tab,回车,此时空格,tab和回车是作为分隔符的
(3)scanf("%c,%c,%c",&a,&b,&c);----输入时必须输入逗号,否则会出错,会忽略空格,tab,回车
3.字符串格式
用字符指针或字符数组来存储字符串:
char s1[];或char * s2;
scanf(“%s%s”,s1,s2);----以空格,回车或tab分隔,即使格式控制符用,隔开也是以空格做分隔符
scanf(“%s,%s”,s1,s2);----依然是以空格,回车或tab分隔,但是只会给s1赋值
Tags:  c语言学习网站 如何学习c语言 c语言学习心得 c语言学习系统 c语言学习

延伸阅读

最新评论

发表评论