介绍
在本实验中,你将学习如何使用 C 编程语言中的 scanf() 函数读取用户输入。scanf() 函数是一个强大的工具,用于从用户处读取输入,它定义在标准输入/输出库 stdio.h 中。C 是一种强类型语言,支持多种数据类型。在本实验中,我们将重点使用 char 和 int 数据类型来读取和显示用户输入。
设置开发环境
在这一步中,我们将设置开发环境并创建一个新的 C 文件用于我们的程序。
在 WebIDE 中打开一个终端。默认情况下,你应该位于
/home/labex/project目录中。如果不确定,可以输入pwd(print working directory)命令来检查当前所在位置。使用以下命令创建一个名为
user_input.c的新文件:touch user_input.ctouch命令用于创建一个新的空文件(如果文件不存在),或者更新现有文件的时间戳。在 WebIDE 编辑器中打开
user_input.c文件。你可以通过点击 WebIDE 左侧文件资源管理器中的文件名,或者使用File菜单中的Open File选项来完成此操作。
编写基本程序结构
在这一步中,我们将编写 C 程序的基本结构。
在
user_input.c文件中,添加以下代码:#include <stdio.h> int main() { // 我们将在此处添加代码 return 0; }让我们分解一下这段代码:
#include <stdio.h>告诉编译器包含标准输入/输出库。该库包含我们将用于输入和输出的函数,例如printf()和scanf()。int main()是程序开始执行的主函数。每个 C 程序都必须有一个主函数。- 大括号
{ }定义了主函数的主体。 return 0;在主函数末尾表示程序已成功执行。
保存文件。你可以通过按下 Ctrl+S 或从
File菜单中选择Save来完成此操作。
实现用户输入姓名功能
现在,让我们实现读取用户姓名的功能。
修改
user_input.c文件,在main()函数中添加以下代码:#include <stdio.h> int main() { char name[100]; printf("Enter your name: "); scanf("%s", name); printf("Hello, %s!\n", name); return 0; }以下是每一行代码的作用:
char name[100];声明一个字符数组(字符串),最多可容纳 99 个字符加上空终止符。printf("Enter your name: ");提示用户输入姓名。scanf("%s", name);从用户输入中读取一个字符串并将其存储在name数组中。%s格式说明符用于读取字符串。printf("Hello, %s!\n", name);使用用户输入的姓名打印问候语。格式字符串中的%s会被name的值替换。
保存文件。
添加年龄输入功能
让我们扩展程序,使其还可以询问用户的年龄。
修改
user_input.c文件,添加年龄输入功能:#include <stdio.h> int main() { char name[100]; int age; printf("Enter your name: "); scanf("%s", name); printf("Enter your age: "); scanf("%d", &age); printf("Hello, %s! You are %d years old.\n", name, age); return 0; }以下是新增的内容:
int age;声明一个整数变量,用于存储用户的年龄。- 我们添加了另一对
printf()和scanf()来提示并读取年龄。 scanf("%d", &age);从用户输入中读取一个整数。%d格式说明符用于读取整数。注意age前的&,这是因为scanf()需要变量的内存地址来存储输入。- 最后的
printf()现在在输出消息中包含了年龄。
保存文件。
编译并运行程序
在这最后一步中,我们将编译 C 程序并运行它以查看结果。
在终端中,导航到包含
user_input.c文件的目录:cd /home/labex/project此步骤确保你位于正确的目录中。如果你已经在该目录中,你会看到一条消息显示“cd: no such file or directory”,可以忽略此消息。
使用 GCC 编译器编译程序:
gcc user_input.c -o user_input此命令告诉 GCC 编译
user_input.c并创建一个名为user_input的可执行文件。如果代码中有任何错误,你会在此处看到错误消息。如果发生这种情况,请返回代码,修复错误,然后重新尝试编译。运行编译后的程序:
./user_input./告诉 shell 在当前目录中查找程序。

程序将提示你输入姓名和年龄。输入你的回答并在每次输入后按 Enter 键。
你应该会看到一条包含你的姓名和年龄的个性化问候消息。
如果遇到任何问题,请仔细检查代码中的拼写错误,并确保在编译之前保存了所有更改。
总结
在本实验中,你学习了如何使用 C 语言中的 scanf() 函数读取用户输入。你创建了一个程序,提示用户输入姓名和年龄,读取输入并显示个性化的问候消息。此练习向你介绍了 C 语言中的基本输入/输出操作、处理不同数据类型(char 数组用于字符串,int 用于整数)以及编译和运行 C 程序的过程。
关键要点:
scanf()函数用于从用户读取输入。- 根据读取的输入类型,使用不同的格式说明符(
%s用于字符串,%d用于整数)。 - 当使用
scanf()读取整数或其他非字符串类型时,需要使用&运算符传递变量的地址。 - 编译过程将你的 C 代码转换为可执行程序。
这些基本技能构成了更复杂 C 编程任务的基础,并将对你继续学习和提升编程能力非常有帮助。请记住,编程中实践是关键——尝试修改此程序或创建新程序,以巩固你所学到的知识!



