A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 舒少勇 中级黑马   /  2015-3-19 10:27  /  716 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

什么时候需要使用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函数无法结束

以上内容纯属个人愚见 请大家指教







0 个回复

您需要登录后才可以回帖 登录 | 加入黑马