C++学生成绩统计:百分制转五分制及分布统计
C++学生成绩统计:百分制转五分制及分布统计
本文介绍如何使用C++编写程序,实现学生成绩的统计功能,包括:
- 将百分制成绩转换为五分制(A、B、C、D、E);2. 统计每个等级的人数分布。
代码示例
以下是完整的C++代码:cpp#include
using namespace std;
char calculateGrade(int score) { if (score >= 90) { return 'A'; } else if (score >= 80) { return 'B'; } else if (score >= 70) { return 'C'; } else if (score >= 60) { return 'D'; } else { return 'E'; }}
int main() { int n; cout << '请输入学生人数:'; cin >> n;
vector<int> scores(n);
cout << '请输入学生成绩:' << endl; for (int i = 0; i < n; i++) { cin >> scores[i]; }
vector<int> gradeCounts(5, 0); // 分别记录A、B、C、D、E等级的人数
for (int i = 0; i < n; i++) { char grade = calculateGrade(scores[i]);
switch (grade) { case 'A': gradeCounts[0]++; break; case 'B': gradeCounts[1]++; break; case 'C': gradeCounts[2]++; break; case 'D': gradeCounts[3]++; break; case 'E': gradeCounts[4]++; break; } }
cout << '成绩分布统计结果:' << endl; cout << 'A: ' << gradeCounts[0] << ' 人' << endl; cout << 'B: ' << gradeCounts[1] << ' 人' << endl; cout << 'C: ' << gradeCounts[2] << ' 人' << endl; cout << 'D: ' << gradeCounts[3] << ' 人' << endl; cout << 'E: ' << gradeCounts[4] << ' 人' << endl;
return 0;}
代码讲解
-
calculateGrade函数: - 接收一个整数参数score(表示百分制成绩)。 - 使用if-else if语句判断成绩所属的等级区间,并返回对应的五分制等级('A' - 'E')。 -
main函数: - 获取学生人数n。 - 创建一个vector容器scores用于存储学生的百分制成绩。 - 使用循环读取n个学生的成绩,并存储到scores容器中。 - 创建一个vector容器gradeCounts,初始化为5个元素,分别表示A、B、C、D、E等级的人数,初始值为0。 - 遍历scores容器,对每个成绩调用calculateGrade函数获取其对应的等级。 - 使用switch语句根据等级更新gradeCounts容器中对应等级的人数。 - 最后输出gradeCounts容器中每个等级的人数统计结果。
希望这个例子能够帮助你理解如何使用C++进行学生成绩统计,并将百分制成绩转换为五分制等级,以及如何统计每个等级的人数分布。
原文地址: https://www.cveoy.top/t/topic/bv0s 著作权归作者所有。请勿转载和采集!