3. scanf函数
作用
从标准输入(终端)读取数据,根据指定的格式(如:%d、%f等)将读取的数据转换为相应的类型,放入到对应的变量中。
头文件:
#include <stdio.h>
调用格式:
scanf("格式字符串", 变量地址1, 变量地址2...);
返回值:
成功读取的数据的数量。若失败或输入结束则返回 EOF(-1)。
常用读取格式
格式符
说明
%d读取整数(
int)%f读取浮点数(
float)%lf读取双精度浮点数(
double)%s读取字符串(
char*)%c读取单个字符串(
char)%u读取无符号整数(
unsigned int)示例:
文件名: scanf_test.c
#include <stdio.h>
int main(int argc, char *argv[]) {
int count = 0;
float price = 3.1;
printf("读取之前的count:%d, price:%f\n", count, price);
printf("请输入整数:");
scanf("%d", &count);
printf("请输入小数:");
scanf("%f", &price);
printf("读取之后的count:%d, price:%f\n", count, price);
return 0;
}
执行过程和结果
weimingze@mzstudio:~$ gcc -o scanf_test scanf_test.c
weimingze@mzstudio:~$ ./scanf_test
读取之前的count:0, price:3.100000
请输入整数:10
请输入小数:9.9
读取之后的count:10, price:9.900000
练习:
写一个程序,声明两个整数变量 x、y,声明两个float 类型的变量 f1和f2。读取两个整数放入 x、y,读取两个小数放入 f1 和 f2。
打印x, y, f1, f2 的值。