能否提供一个简单的 scanf 函数用法示例代码及其详细解释?
时间: 2024-10-27 20:15:24 浏览: 54
`scanf`函数是C语言中的标准输入函数,它允许从用户输入流读取数据,并将其存储到指定的位置。以下是一个简单的示例:
```c
#include <stdio.h>
int main() {
int age;
float number;
// 使用 %d 和 %f 格式说明符分别匹配整数和浮点数的输入
printf("请输入您的年龄: ");
if (scanf("%d", &age) == 1) { // 如果成功读取一个整数
printf("您的年龄是: %d\n", age);
} else {
printf("错误: 输入不是一个有效的整数.\n");
}
printf("请输入一个数字: ");
if (scanf("%f", &number) == 1 && number != -FLT_MAX) { // 检查是否读取了有效浮点数
printf("您输入的数字是: %.2f\n", number); // 输出两位小数
} else {
printf("错误: 输入不是一个有效的数字.\n");
}
return 0;
}
```
在这个例子中:
- `scanf`的第一个参数是格式字符串,`%d`表示我们要读取一个整数,`%f`表示浮点数。
- `%d`和`&age`一起工作,`&age`获取变量age的地址,`scanf`会将用户的输入赋值给这个地址所指向的内存位置。
- `%f`和`&number`类似。
- 返回值1表示输入成功,0或其他值通常表示输入失败。
阅读全文