黑马程序员技术交流社区
标题: scanf函数使用的注意点 [打印本页]
作者: 舒少勇 时间: 2015-3-19 10:27
标题: scanf函数使用的注意点
什么时候需要使用scanf函数?
当我们需要动态的从键盘输入数据的时候 就需要用到scanf函数
scanf函数 是在stdio.h中声明的一个函数,因此使用前必须加入#include <stdio.h>
实现细节:
调用scanf函数时,需要传入变量的地址作为参数,scanf函数会等待标准输入设备(比如键盘)输入数据,并且将输入的数据赋值给地址对应的变量
比如谢了如下程序:
#include <stdio.h>
int main()
{
int score;
scanf("%d", &score);
}
当程序执行到scanf函数时,会等待用户的键盘输入,并不会往后执行代码 会等待用户从键盘上输入数据
(
scanf的第1个参数是"%d",说明要求用户以10进制的形式输入一个整数。
这里要注意,scanf的第2个参数传递的不是age变量,而是age变量的地址&age,&是C语言中的一个地址运算符,可以用来获取变量的地址
)
输入完毕后,我们就可以敲一下回车键 ,敲一下回车键,目的是告诉scanf函数我们已经输入完毕了,这个时候scanf函数就会将我们输入的值赋值给score变量
同时 scanf 函数还可以同时接收多个数值,但是这个时候我们就必须要指定每个数值之间的分隔符 如果不知道 会认为输入的是一个数值
例如:scanf("%d-%d-%d",a,b,c); 这个代码的意思 就是让用户输入3个数值 每个数字之间用‘-’ 隔开
注意:数值之间的分隔符不一定要用中划线-,可以是逗号、空格、星号*、井号# 英文字母等
还有就是 如果我们指定每个数值直接用空格隔开的话 这个时候 在输入分隔符的时候 我们可以直接按键盘上的Tab键 回车键 空格键
还要注意的就是 scanf函数的第一个参数不能包含“\n”
比如scanf(“%d\n”, &a); 这样的写法是错误的 这样写会导致scanf函数无法结束
以上内容纯属个人愚见 请大家指教
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |