`scanf` 函数的使用及示例
在C语言中,`scanf` 是一个常用的输入函数,用于从标准输入设备(通常是键盘)读取数据并存储到变量中。它可以根据格式说明符将输入的数据解析为不同的类型,例如整数、浮点数或字符串。
`scanf` 的基本语法
```c
int scanf(const char format, ...);
```
- format:格式化字符串,指定输入数据的类型和格式。
- ...:可变参数列表,对应于需要存储输入值的变量。
常见格式说明符
| 格式说明符 | 说明 |
|------------|--------------------------|
| `%d` | 输入一个十进制整数|
| `%f` | 输入一个浮点数 |
| `%c` | 输入一个字符 |
| `%s` | 输入一个字符串(以空格分隔) |
示例代码
以下是一个简单的例子,演示如何使用 `scanf` 读取用户输入:
```c
include
int main() {
int age;
float height;
char name[50];
printf("请输入你的姓名: ");
scanf("%s", name);
printf("请输入你的年龄: ");
scanf("%d", &age);
printf("请输入你的身高(单位: 米): ");
scanf("%f", &height);
printf("\n你好, %s!\n", name);
printf("你今年 %d 岁了。\n", age);
printf("你的身高是 %.2f 米。\n", height);
return 0;
}
```
运行示例
假设用户输入如下
```
请输入你的姓名: 张三
请输入你的年龄: 25
请输入你的身高(单位: 米): 1.75
```
程序输出结果为:
```
你好, 张三!
你今年 25 岁了。
你的身高是 1.75 米。
```
注意事项
1. 地址符号 `&`:当使用 `scanf` 存储输入值时,必须在变量前加上 `&` 符号,表示传递变量的地址。
2. 字符串输入 `%s`:`%s` 只会读取到第一个空格为止,如果需要读取包含空格的完整字符串,可以使用 `fgets` 函数。
3. 错误处理:输入不符合格式时,`scanf` 会返回实际读取的数据个数,可以通过检查返回值来判断输入是否成功。
总结
`scanf` 是 C 语言中非常实用的输入函数,能够帮助我们快速实现与用户的交互。通过合理使用格式说明符和注意细节,我们可以高效地完成各种输入任务。