C语言基础:输入三门成绩计算总和与平均值

Luna
Luna
发布时间:2026-10-16| 5人浏览过
原创

本文通过C语言实例演示如何处理学生成绩的输入、求和及平均值计算,解析数据类型转换关键点,帮助初学者掌握基础编程逻辑。

C语言实现成绩统计

在C语言编程中,顺序结构是最基础的程序形态,严格遵循“输入数据 → 处理数据 → 输出数据”的流程。本示例旨在解决具体场景:用户输入三个数值(代表三位学生的成绩),程序需计算出这三个数的总和(sum)以及平均值(ave)。

由于平均值通常包含小数部分,因此在定义变量时,必须将存储平均值的变量定义为实型(如 float 或 double),而总和若仅由整数相加且暂存于整型变量中也是可行的,但需注意后续除法的精度问题。

第1步:编写核心代码

首先,我们需要引入标准输入输出库,并声明用于存储数据的变量。以下是完整的程序代码实现:

#include <stdio.h>

int main() {
    int a, b, c, sum;
    float ave;
    
    printf("input three student's score:");
    scanf("%d%d%d", &a, &b, &c);
    
    sum = a + b + c;
    // 注意:分母必须使用浮点数 3.0 以确保进行浮点除法
    ave = sum / 3.0;
    
    printf("sum=%4d\nAverage=%5.2f\n", sum, ave);
    return 0;
}

第2步:编译与运行观察

将上述代码保存并编译运行后,终端会提示输入三个数字。输入完毕后,程序将输出计算得到的总和与保留两位小数的平均值。

第3步:结果逻辑分析

在上述代码中:
- a, b, c 分别用于存放输入的三位学生成绩;
- sum 为整型变量,用于累加总分数;
- ave 为浮点型变量,用于接收平均值。

关键注意点在于 ave = sum / 3.0; 这一行。如果写作 / 3,由于 sum 是整型,C语言会执行整数除法,导致小数部分被截断,计算结果不准确。强制转换为浮点运算或使用浮点常量 3.0 是保证精度的标准做法。

进阶练习:求和、平均值与取余

为进一步巩固基础运算,我们可以扩展需求:除了计算总和与平均值外,还要求计算总成绩除以3的余数(rem)。这涉及到了取模运算符 %。

第4步:满足特定格式要求的代码

假设题目要求如下:
- 提示信息为 "Enter three integer: "
- 输入格式为 "%d%d%d"
- 输出格式严格匹配:SUM 占4位,AVERAGE 保留2位小数,REMAINDER 占3位。

实现代码如下:

#include <stdio.h>

int main() {
    int a, b, c, sum, rem;
    float ave;
    
    printf("Enter three integer: ");
    scanf("%d%d%d", &a, &b, &c);
    
    sum = a + b + c;
    ave = sum / 3.0;
    rem = sum % 3;
    
    printf("SUM = %4d\nAVERAGE = %.2f REMAINDER = %3d\n", sum, ave, rem);
    return 0;
}

第5步:验证运行输出

当输入 80 90 100 时,总和为 270,平均值为 90.00,270 除以 3 的余数为 0。程序应输出:

Enter three integer: 80 90 100
SUM =  270
AVERAGE = 90.00 REMAINDER =   0

该运行结果展示了格式化输出的对齐效果,确保数值在控制台界面中整齐排列。

拓展技巧

在计算求和时,为了代码更简洁,也可以使用复合赋值运算符 + =,例如:
sum = 0;
sum += a + b + c;

虽然对于简单的三个数相加,直接赋值 sum = a + b + c; 更为直观常见,但理解复合赋值有助于应对更复杂的迭代累加场景。

以上就是C语言实现学生总成绩和平均成绩计算的详细内容,更多关于C语言基础编程的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。