作为一个C++程序员,如何编写一个给学生成绩分级
时间: 2024-04-05 09:31:37 浏览: 59
你可以按照以下步骤编写一个给学生成绩分级的程序:
1. 定义分数段和对应的等级,例如:90分以上为A级,80-89分为B级,70-79分为C级,60-69分为D级,60分以下为E级。
2. 读入学生的成绩,并进行分级。
3. 输出每个学生的成绩和对应的等级。
以下是一个C++实现学生成绩分级的示例代码:
```c++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
struct Student {
string name;
int score;
string level;
};
string get_level(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";
}
}
vector<Student> classify_scores(const vector<pair<string, int>>& scores) {
vector<Student> students;
for (const auto& score : scores) {
Student student;
student.name = score.first;
student.score = score.second;
student.level = get_level(score.second);
students.push_back(student);
}
return students;
}
int main() {
vector<pair<string, int>> scores = {{"Alice", 85}, {"Bob", 72}, {"Charlie", 91}, {"David", 64}};
vector<Student> students = classify_scores(scores);
for (const auto& student : students) {
cout << student.name << "\t" << student.score << "\t" << student.level << endl;
}
return 0;
}
```
这个学生成绩分级程序使用了结构体Student来表示每个学生的姓名、分数和等级。在get_level函数中,根据分数返回对应的等级。在classify_scores函数中,将每个学生的姓名、分数和等级保存到一个Student结构体中,并将所有学生的信息保存到一个vector<Student>中。最后,在main函数中输出每个学生的姓名、分数和等级。
阅读全文