C 语言 scanf() 函数详解356


简介

C 语言 scanf() 函数用于从标准输入流中读取格式化的数据并将其存储在指定的变量中。它是标准输入/输出函数的一部分,其主要目的是从用户或文件中获取数据。

函数原型

scanf() 函数的原型如下:int scanf(const char *format, ...);

* format:格式化字符串,指定输入数据的格式。
* ...:可变参数列表,其中包含要存储输入数据的变量地址。

参数* format:格式化字符串使用一系列格式说明符来指定输入数据的类型和格式。最常用的格式说明符包括:
* %d:整数
* %f:浮点数
* %c:字符
* %s:字符串
* %ld:长整数
* %lf:长浮点数
* ...:要存储输入数据的变量地址,按顺序与格式字符串中的格式说明符相对应。

返回值

scanf() 函数返回已成功读取和存储的输入数据的项数。如果在输入流中没有提供所需格式的数据,它将返回 -1。如果遇到文件结束符 (EOF),它将返回 0。

用法

要使用 scanf() 函数,我们必须遵循以下步骤:1. 声明所需的变量来存储输入数据。
2. 调用 scanf() 函数,并传递格式化字符串和要存储数据的变量地址。
3. 检查返回值以确定读取操作是否成功。

示例

以下示例演示了如何使用 scanf() 函数从用户处读取整数和浮点数:#include
int main() {
int age;
float weight;
printf("Enter your age: ");
scanf("%d", &age);
printf("Enter your weight: ");
scanf("%f", &weight);
printf("Your age is: %d", age);
printf("Your weight is: %f", weight);
return 0;
}

注意事项* scanf() 函数无法验证输入数据的有效性,因此在使用前请确保输入数据是正确格式化的。
* 如果输入数据与格式说明符不匹配,scanf() 函数会留下不确定的状态,可能导致后续调用失败。
* scanf() 函数不适用于从二进制文件中读取数据。
* 对于更复杂的数据结构,请考虑使用 fscanf() 函数。

2024-10-15


上一篇:C 语言中的无参函数

下一篇:C 语言输入输出函数:轻松操作数据流