|
scanf函数,与printf函数一样,都被定义在stdio.h里,因此在使用scanf函数时要加上#include<stdio.h>。
它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中,其关键字最末一个字母f即为“格式”(format)之意。
函数原型
scanf ( 格式参数,地址列表 )
作用:从键盘流中获取数据,存入地址列表的地址里去!
例子:
- #include <stdio.h>
- void main()
- {
- int i; //定义一个整型变量i
- scanf("%d",&i); //&在这里是取地址符,&i表示变量i在内存中的地址,%d为从键盘流中获取一个整型数据存入变量i所在的地址中
- }
复制代码
scanf返回一个成功赋值的数据,
scanf用法和printf差不多,一个是输出,一个是输入,scanf比较特殊的地方是在后面的参数为地址,这里我们利用取地址符来获取变量i的地址,
在以后我们会学到指针,我们也可以利用指针来进行获取输入,与printf一样的,scanf也是一个可变长参数的函数,它可以一次性从键盘获取
多个数据然后一次存入各个地址,例如:
- #include <stdio.h>
- void main()
- {
- int i , j; //定义两个整型变量,分别为i和j
- char ch; //定义一个字符型变量ch
- scanf("%d%d%c",&i,&j,&ch); //从键盘流中获取数据,一次存入i,j,ch所在的地址中
- printf("%d%d%c",i,j,ch); //复习一下上一节所讲的内容,把三个变量的内容格式化输出
- }
复制代码
运行程序;
在控制台窗口输入1 2 a,按回车键
输出结果:
1 2 a;
返回值:
scanf的返回值由后面的参数决定
返回值表示成功读入的数据的个数
如:
scanf("%d%d", &a, &b);
如果a和b都被成功读入,那么scanf的返回值就是2
如果只有a被成功读入,返回值为1
如果a和b都未被成功读入,返回值为0
如果遇到错误或遇到end of file,返回值为EOF。
且返回值为int型
由于本人水平有限,如果讲解有错,忘大家指出,希望和大家在世翰一起交流学习,共同进步! |
|