scanf()函数
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h>。(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令#include <stdio.h>。)它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。
scanf 是 scan format 的缩写,意思是格式化扫描,也就是从键盘获得用户输入,和 printf 的功能正好相反。
我们先来看一个例子:
#include <stdio.h> int mAIn() { int a = 0, b = 0, c = 0, d = 0; scanf("%d", &a); //输入整数并赋值给变量a scanf("%d", &b); //输入整数并赋值给变量b printf("a+b=%d\n", a+b); //计算a+b的值并输出 scanf("%d %d", &c, &d); //输入两个整数并分别赋值给c、d printf("c*d=%d\n", c*d); //计算c*d的值并输出 return 0; }
运行结果:
12↙ 60↙ a+b=72 10 23↙ c*d=230
↙
表示按下回车键。
从键盘输入12,按下回车键,scanf() 就会读取输入数据并赋值给变量 a;本次输入结束,接着执行下一个 scanf() 函数,再从键盘输入 60,按下回车键,就会将 60 赋值给变量 b,都是同样的道理。
第 8 行代码中,scanf() 有两个以空格分隔的%d
,后面还跟着两个变量,这要求我们一次性输入两个整数,并分别赋值给 c 和 d。注意"%d %d"
之间是有空格的,所以输入数据时也要有空格。对于 scanf(),输入数据的格式要和控制字符串的格式保持一致。