C++ 循环结构计算学生平均成绩:while 与 do...while 实现

本教程将演示如何使用 C++ 中的 whiledo...while 循环结构来计算学生的平均成绩。我们将提供两个示例,分别使用不同的循环结构来实现相同的功能。

使用 while 循环结构

以下代码使用 while 循环结构实现平均成绩计算:

#include <iostream>
using namespace std;

int main() {
    int score, sum = 0, count = 0;
    while (true) {
        cin >> score;
        if (score == -1) {
            break;
        }
        sum += score;
        count++;
    }
    if (count == 0) {
        cout << '没有输入成绩' << endl;
    } else {
        double average = static_cast<double>(sum) / count;
        cout << '平均成绩为:' << average << endl;
    }
    return 0;
}

代码解释:

  1. 首先,我们声明了三个变量:score 用于存储单个学生成绩,sum 用于累加所有成绩,count 用于统计输入的成绩数量。
  2. 进入 while 循环,循环条件为 true,表示无限循环,直到遇到 break 语句。
  3. 在循环中,我们使用 cin 获取用户输入的成绩,并判断是否为 -1
  4. 如果输入的是 -1,则执行 break 语句跳出循环。
  5. 如果输入的不是 -1,则将 score 加到 sum 中,并将 count1
  6. 循环结束后,判断 count 是否为 0,如果为 0,则表示没有输入成绩,输出提示信息。
  7. 如果 count 不为 0,则计算平均成绩,并输出结果。

使用 do...while 循环结构

以下代码使用 do...while 循环结构实现平均成绩计算:

#include <iostream>
using namespace std;

int main() {
    int score, sum = 0, count = 0;
    do {
        cin >> score;
        if (score != -1) {
            sum += score;
            count++;
        }
    } while (score != -1);
    if (count == 0) {
        cout << '没有输入成绩' << endl;
    } else {
        double average = static_cast<double>(sum) / count;
        cout << '平均成绩为:' << average << endl;
    }
    return 0;
}

代码解释:

  1. while 循环类似,我们首先声明了三个变量:scoresumcount
  2. 进入 do...while 循环,循环体中的代码会至少执行一次,然后根据循环条件判断是否继续执行。
  3. 在循环体内,我们使用 cin 获取用户输入的成绩,并判断是否为 -1
  4. 如果输入的不是 -1,则将 score 加到 sum 中,并将 count1
  5. 循环条件为 score != -1,表示当输入 -1 时,循环结束。
  6. 循环结束后,判断 count 是否为 0,如果为 0,则表示没有输入成绩,输出提示信息。
  7. 如果 count 不为 0,则计算平均成绩,并输出结果。

总结

通过这两个示例,我们了解了 whiledo...while 循环结构的基本使用方法,并学会了如何使用它们来计算学生的平均成绩。在实际编程中,我们可以根据具体需求选择不同的循环结构来实现功能。

注意: 以上代码示例均假设用户输入的是整数。如果用户输入的是浮点数,则需要进行相应的类型转换。

C++ 循环结构计算学生平均成绩:while 与 do...while 实现

原文地址: https://www.cveoy.top/t/topic/mP5q 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录