scanf 在 c 语言中用于从用户读取输入,并存储在变量中。具体工作原理如下:格式化字符串指定数据格式。scanf 函数从输入流中提取数据。数据存储在相应的变量中。返回值表示成功读取的变量个数。
scanf 在 C 语言中的含义
scanf 是 C 语言中一个标准的输入函数,用于从标准输入流(通常是键盘)读取数据。它允许程序员从用户那里获取输入,并将其存储在变量中。
函数语法
int scanf(const char *format, ...);
其中:
立即学习“C语言免费学习笔记(深入)”;
- format 是一个格式化字符串,指定要读取数据的格式。
- ... 是要读取数据的变量列表。
工作原理
scanf 函数使用格式化字符串来指定如何从输入流读取数据。格式化字符串中的每个字符都对应一个变量的类型。当输入与格式化字符串匹配时,scanf 函数将从输入流中提取数据并将其存储在相应的变量中。
例如,以下代码片段从用户那里读取一个整数和一个浮点数:
int age;
float salary;
scanf("%d %f", &age, &salary);
格式说明符
格式化字符串使用格式说明符来指定变量的类型。常见格式说明符包括:
- %d:整数(十进制)
- %f:浮点数
- %s:字符串
- %c:字符
返回值
scanf 函数返回成功读取的变量个数。如果格式化字符串中的所有变量都被成功读取,则返回的值与变量个数相同。否则,返回一个负值。
示例
以下示例程序从用户那里读取姓名、年龄和工资信息:
#include <stdio.h>
int main() {
char name[50];
int age;
float salary;
printf("Enter your name: ");
scanf("%s", name);
printf("Enter your age: ");
scanf("%d", &age);
printf("Enter your salary: ");
scanf("%f", &salary);
printf("Your name is %s.n", name);
printf("Your age is %d.n", age);
printf("Your salary is %.2f.n", salary);
return 0;
}</stdio.h>