简介
在这个实验中,我们将创建一个 C 程序来计算圆的面积和周长。这个简单的程序展示了几个基本的编程概念,包括变量声明、用户输入处理、数学计算和格式化输出显示。

我们将使用以下数学公式:
- 圆的面积 = π × 半径²
- 圆的周长 = 2 × π × 半径
在这个实验结束时,你将编写一个完整的 C 程序,该程序接受用户输入并使用这些公式进行计算。
在这个实验中,我们将创建一个 C 程序来计算圆的面积和周长。这个简单的程序展示了几个基本的编程概念,包括变量声明、用户输入处理、数学计算和格式化输出显示。
我们将使用以下数学公式:
在这个实验结束时,你将编写一个完整的 C 程序,该程序接受用户输入并使用这些公式进行计算。
让我们从创建 C 程序文件并设置基本结构开始。我们将在 ~/project/circle_program
目录下创建一个名为 circle.c
的文件。
导航到项目目录:
cd ~/project/circle_program
使用 WebIDE 编辑器创建一个名为 circle.c
的新文件。点击 WebIDE 顶部的“File”菜单,然后选择“New File”。或者,你也可以在文件资源管理器面板中右键单击并选择“New File”。
将文件命名为 circle.c
并保存到 ~/project/circle_program
目录中。
现在,让我们在文件中添加 C 程序的基本结构:
#include <stdio.h>
int main() {
// 我们将在这里添加代码
return 0;
}
在上述代码中:
#include <stdio.h>
是一个预处理指令,它告诉编译器包含标准输入/输出库,该库提供了像 printf()
和 scanf()
这样的函数。int main()
定义了主函数,它是任何 C 程序的入口点。{ }
标记了主函数体的开始和结束。return 0;
表示程序成功执行。现在我们已经有了基本的程序结构,让我们添加计算所需的变量和常量。
在编辑器中打开你的 circle.c
文件(如果它还没有打开的话)。
我们需要几个变量:
按如下方式更新你的代码:
#include <stdio.h>
int main() {
// 声明变量和常量
float radius; // 用于存储圆的半径
const float PI = 3.14159; // 数学常量 π(圆周率)
float area; // 用于存储计算得到的面积
float circumference; // 用于存储计算得到的周长
return 0;
}
让我们来理解一下这些变量声明:
float radius;
—— 我们使用 float
数据类型,因为半径可能是一个小数。const float PI = 3.14159;
—— 我们将 PI 定义为常量,因为它的值在程序执行期间不应改变。const
关键字确保了这一点。float area;
和 float circumference;
—— 这些变量将存储我们的计算结果,结果可能是小数。在 C 编程中,我们通常在函数开头声明所有变量。这种做法使程序更有条理,更易于理解。
现在,让我们添加代码来询问用户圆的半径并读取他们的输入。
在编辑器中打开你的 circle.c
文件(如果它还没有打开的话)。
添加提示用户并读取其输入的代码:
#include <stdio.h>
int main() {
// 声明变量和常量
float radius; // 用于存储圆的半径
const float PI = 3.14159; // 数学常量 π(圆周率)
float area; // 用于存储计算得到的面积
float circumference; // 用于存储计算得到的周长
// 提示用户输入半径
printf("Please enter the radius of the circle: ");
// 从用户输入中读取半径值
scanf("%f", &radius);
// 验证输入(可选,但为良好实践)
if (radius <= 0) {
printf("Error: Radius must be a positive number\n");
return 1; // 以错误代码退出
}
return 0;
}
让我们来理解一下我们添加的内容:
printf("Please enter the radius of the circle: ");
—— 这会显示一条消息,提示用户输入半径。scanf("%f", &radius);
—— 这会从用户那里读取一个浮点数,并将其存储在 radius
变量中。
%f
是浮点数的格式说明符。&radius
传递 radius
变量的内存地址,以便 scanf()
可以修改其值。scanf()
函数用于从标准输入(键盘)读取格式化输入。使用正确的格式说明符(浮点数使用 %f
)并使用 &
运算符传递变量的地址非常重要。
现在我们已经获取了半径,就可以使用公式来计算圆的面积和周长了。
在编辑器中打开你的 circle.c
文件(如果它还没有打开的话)。
添加计算代码:
#include <stdio.h>
int main() {
// 声明变量和常量
float radius; // 用于存储圆的半径
const float PI = 3.14159; // 数学常量 π(圆周率)
float area; // 用于存储计算得到的面积
float circumference; // 用于存储计算得到的周长
// 提示用户输入半径
printf("Please enter the radius of the circle: ");
// 从用户输入中读取半径值
scanf("%f", &radius);
// 验证输入
if (radius <= 0) {
printf("Error: Radius must be a positive number\n");
return 1; // 以错误代码退出
}
// 计算圆的面积
area = PI * radius * radius;
// 计算圆的周长
circumference = 2 * PI * radius;
return 0;
}
让我们来理解一下这些计算:
area = PI * radius * radius;
—— 这使用公式 π × r² 来计算面积,其中 r 是半径。circumference = 2 * PI * radius;
—— 这使用公式 2 × π × r 来计算周长。在 C 语言中,乘法运算符是 *
。要计算 r²,我们只需将半径乘以自身(radius * radius
)。对于更复杂的数学运算,我们会使用 math.h
库中的函数,但我们的计算足够简单,不需要使用该库。
让我们通过添加显示结果的代码来完成这个程序,然后编译并运行它,看看它是否能正确工作。
在编辑器中打开你的 circle.c
文件(如果它还没有打开的话)。
添加显示结果的代码:
#include <stdio.h>
int main() {
// 声明变量和常量
float radius; // 用于存储圆的半径
const float PI = 3.14159; // 数学常量 π(圆周率)
float area; // 用于存储计算得到的面积
float circumference; // 用于存储计算得到的周长
// 提示用户输入半径
printf("Please enter the radius of the circle: ");
// 从用户输入中读取半径值
scanf("%f", &radius);
// 验证输入
if (radius <= 0) {
printf("Error: Radius must be a positive number\n");
return 1; // 以错误代码退出
}
// 计算圆的面积
area = PI * radius * radius;
// 计算圆的周长
circumference = 2 * PI * radius;
// 显示结果
printf("\nResults for a circle with radius %.2f units:\n", radius);
printf("Area: %.2f square units\n", area);
printf("Circumference: %.2f units\n", circumference);
return 0;
}
让我们来理解一下输出代码:
printf("\nResults for a circle with radius %.2f units:\n", radius);
—— 这会显示保留 2 位小数的半径。printf("Area: %.2f square units\n", area);
—— 这会显示保留 2 位小数的计算所得面积。printf("Circumference: %.2f units\n", circumference);
—— 这会显示保留 2 位小数的计算所得周长。%.2f
格式说明符告诉 printf()
以保留 2 位小数的方式显示浮点数,使输出更易读。
保存你的文件(Ctrl+S)。
现在,让我们来编译这个程序。在终端中,导航到你的项目目录并使用 gcc
编译器:
cd ~/project/circle_program
gcc circle.c -o circle
-o circle
选项告诉编译器创建一个名为 circle
的可执行文件。
如果编译成功,你可以使用以下命令运行你的程序:
./circle
当出现提示时,输入一个半径值(例如 5)并按回车键。你应该会看到类似于以下的输出:
Please enter the radius of the circle: 5
Results for a circle with radius 5.00 units:
Area: 78.54 square units
Circumference: 31.42 units
尝试再次运行程序,输入不同的半径值,以确认程序能正确工作。
恭喜!你已经成功创建了一个 C 程序,它可以根据用户输入计算并显示圆的面积和周长。
在这个实验中,你已经成功创建了一个 C 程序,该程序可以:
在此过程中,你学习了几个重要的 C 编程概念:
#include
包含头文件scanf()
读取用户输入printf()
显示格式化输出这些基础技能是构建更复杂 C 程序的基石。现在,你可以基于这些知识,创建更复杂的、涉及用户交互和计算的应用程序。