2024年5月4日发(作者:)
scanf用法
scanf函数是C语言标准函数库中一个用于从标准输入流(通常
是键盘输入)中读取数据的函数,它的功能相当于以文件形式读写数
据,允许在程序中从键盘输入给定格式的信息,也可以将它的输出写
到一个文件中。scanf的定义和使用都很简单,但要掌握它所能做的
事情,还是要理解它的一些基本参数和用法才行。
1、scanf的定义
scanf函数的声明和定义如下:
int scanf (char *format,) ;
说明:
(1)scanf用于从标准输入读入一行文本,并将其分割、解析
成多个信息,格式由format决定;
(2)函数返回它实际输入的数据项数,如果返回值是EOF,表
示发生了错误或文件结束;
(3)scanf函数的参数都是指针变量,这样可以将读入的数据
存放到指定的位置;
(4)scanf可以读取 char、int、float类型的数据;
(5)format中的控制符决定scanf函数从键盘上读取什么样的
值,而存取变量指针决定scanf函数将值放到什么位置。
2、scanf的格式控制符
1)%d:读取一个十进制整数;
2)%f:读取一个十进制浮点数;
- 1 -
3)%c:读取一个字符;
4)%s:读取一个字符串;
5)%x:读取一个十六进制数;
6)%o:读取一个八进制数。
scanf函数的格式控制符还可以组合使用,例如:
scanf(%d%f%d &a, &b, &c);
这一句的意思是:从标准输入流中读取一行,并将第一个整数存
入变量a中,将第二个浮点数存入变量b中,将第三个整数存入变量
c中。
3、scanf的特殊用法
(1)忽略输入
当在format字符串中使用“*”号时,表示读取一个字符,但是
不存入指定的变量中,这样既可以实现忽略输入的目的,不影响后续
代码的正常执行。
例如:scanf(%*d &a);
这一句的意思是:读取一个整数,但不存入变量a中,而是忽略
这个输入信息。
(2)跳过不需要读取的字符
在输入信息中,有时候会出现多余的字符,例如空格,tab等,
这些字符scanf函数不会读取,也不会将它们存入变量中,但也不会
跳过这些字符,因此,可以通过空格字符将这些字符串“滤去”。
例如:scanf( %d &a);
- 2 -
这一句的意思是:忽略掉前面的所有字符,直到读取到一个十进
制整数,然后将这个整数存入变量a中。
4、scanf的实例
(1)读取一个字符
scanf(%c &a);
(2)读取一个字符串
char str[20];
scanf(%s str);
(3)读取一行
char str[100];
scanf(%[^
] str);
(4)读取多个变量
int a, b;
float c;
scanf(%d %f %d &a, &c, &b);
总结
以上就是scanf函数的一些基本用法,其实,scanf的功能还远
不止这些,它的用法还有很多很多,它的实际使用还要根据实际需求
来调整,所以,在实际编程中应多多练习,以更加熟练的掌握它的用
法。
- 3 -

发布评论