设计STL程序,随机产生100个50到100之间的整数作为初始的学生成绩数据,接下来将所有成绩由百分制改成等级制,最后将转换的的结果保存到容器中或直接输出显示
时间: 2024-03-23 11:42:57 浏览: 62
编写一个程序用来对学生评定成绩
好的,以下是一个简单的实现:
```c++
#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
using namespace std;
// 定义成绩等级转换函数
char scoreToGrade(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() {
// 随机生成100个50到100之间的整数作为学生成绩
srand(time(NULL));
vector<int> scores;
for (int i = 0; i < 100; i++) {
int score = rand() % 51 + 50;
scores.push_back(score);
cout << score << " ";
}
cout << endl;
// 将成绩转换为等级并保存到容器中
vector<char> grades;
for (int i = 0; i < 100; i++) {
char grade = scoreToGrade(scores[i]);
grades.push_back(grade);
cout << grade << " ";
}
cout << endl;
return 0;
}
```
该程序使用了 STL 中的 vector 容器,生成了 100 个随机成绩,并将成绩转换为等级保存到了另一个 vector 容器中。你可以根据需要将结果保存到文件中或进行其它操作。
阅读全文