学生成绩管理系统 编写一个菜单驱动的学生成绩管理系统,要求实现以下管理功能: (1)录入每个学生的学号和考试成绩; (2)输出所有记录; (3)将学生信息按学号排序; (4)插入一条新的记录; (5)删除一条记录; (6)根据学生姓名查询成绩; (7)对学生成绩进行统计,展示最高分、最低分和平均分。
时间: 2024-01-16 21:02:55 浏览: 25
好的,我可以帮您实现这个学生成绩管理系统。以下是该系统的菜单驱动界面和功能实现:
```
==============================
学生成绩管理系统
==============================
1. 录入学生成绩
2. 输出所有记录
3. 按学号排序
4. 插入一条新的记录
5. 删除一条记录
6. 根据学生姓名查询成绩
7. 统计成绩信息
0. 退出系统
==============================
请选择操作(0-7):
```
1. 录入学生成绩
用户可以依次输入每个学生的学号和考试成绩,直到输入完所有学生信息。学生信息将保存在一个列表中。
2. 输出所有记录
系统将输出保存在列表中的所有学生信息,包括学号和考试成绩。
3. 按学号排序
系统将按学号对学生信息进行排序,并输出排好序后的所有学生信息。
4. 插入一条新的记录
用户需要输入新学生的学号和考试成绩,系统将把新记录插入到已排序的学生信息列表中。
5. 删除一条记录
用户需要输入要删除学生的学号,系统将从列表中删除该学生的信息。
6. 根据学生姓名查询成绩
用户需要输入要查询学生的姓名,系统将在列表中查找该学生的信息,并输出该学生的学号和考试成绩。
7. 统计成绩信息
系统将统计所有学生的最高分、最低分和平均分,并输出统计结果。
代码实现如下:
相关问题
c语言学生成绩管理系统 编写一个菜单驱动的学生成绩管理系统,要求实现以下管理功能: (1)录入每个学生的学号和考试成绩; (2)输出所有记录; (3)将学生信息按学号排序; (4)插入一条新的记录; (5)删除一条记录; (6)根据学生姓名查询成绩; (7)对学生成绩进行统计,展示最高分、最低分和平均分。
好的,我可以帮你解答这个问题。对于这个学生成绩管理系统,你可以按照以下步骤进行实现:
1. 定义学生信息的结构体,包括学号、姓名和成绩等字段。
2. 定义一个动态数组,用来存储所有的学生信息。
3. 编写菜单函数,实现以下功能:
(1) 录入学生信息:从键盘输入学生的学号和考试成绩,将学生信息存储到数组中。
(2) 输出所有记录:遍历数组,输出每个学生的学号和成绩。
(3) 将学生信息按学号排序:对数组中的学生信息按照学号进行排序,可以使用快速排序等算法。
(4) 插入一条新的记录:从键盘输入新的学生信息,将学生信息插入到数组中。
(5) 删除一条记录:从键盘输入要删除的学生的学号,从数组中删除该学生的信息。
(6) 根据学生姓名查询成绩:从键盘输入要查询的学生姓名,遍历数组,输出该学生的成绩。
(7) 对学生成绩进行统计:遍历数组,计算最高分、最低分和平均分,并输出。
4. 在主函数中调用菜单函数,实现学生成绩管理系统的运行。
实现以上步骤,即可完成这个学生成绩管理系统的编写。当然,具体的代码实现还需要根据自己的实际情况进行调整和完善。
用c++编写一个菜单驱动的学生成绩管理系统,要求实现以下管理功能: (1)录入每个学生的学号和考试成绩; (2)输出所有记录; (3)将学生信息按学号排序; (4)插入一条新的记录; (5)删除一条记录; (6)根据学生姓名查询成绩; (7)对学生成绩进行统计,展示最高分、最低分和平均分。
好的,我会根据你的要求进行回答,以下是一个简单的菜单驱动的学生成绩管理系统的C++代码:
```c++
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct student {
string name;
int id;
int score;
};
bool cmp(student a, student b) { //按学号排序的比较函数
return a.id < b.id;
}
void print(vector<student> v) { //输出所有记录
for (int i = 0; i < v.size(); i++) {
cout << "姓名:" << v[i].name << " 学号:" << v[i].id << " 成绩:" << v[i].score << endl;
}
}
void insert(vector<student>& v) { //插入一条新的记录
student s;
cout << "请输入学生姓名:";
cin >> s.name;
cout << "请输入学生学号:";
cin >> s.id;
cout << "请输入学生成绩:";
cin >> s.score;
v.push_back(s);
cout << "插入成功!" << endl;
}
void del(vector<student>& v) { //删除一条记录
int n;
cout << "请输入要删除的学生学号:";
cin >> n;
for (vector<student>::iterator it = v.begin(); it != v.end(); it++) {
if (it->id == n) {
v.erase(it);
cout << "删除成功!" << endl;
return;
}
}
cout << "未找到该学生!" << endl;
}
void search(vector<student> v) { //根据学生姓名查询成绩
string name;
cout << "请输入要查询的学生姓名:";
cin >> name;
for (int i = 0; i < v.size(); i++) {
if (v[i].name == name) {
cout << "学生姓名:" << v[i].name << " 学号:" << v[i].id << " 成绩:" << v[i].score << endl;
return;
}
}
cout << "未找到该学生!" << endl;
}
void stat(vector<student> v) { //对学生成绩进行统计
int sum = 0, max_score = 0, min_score = 100;
for (int i = 0; i < v.size(); i++) {
sum += v[i].score;
max_score = max(max_score, v[i].score);
min_score = min(min_score, v[i].score);
}
cout << "最高分:" << max_score << " 最低分:" << min_score << " 平均分:" << (double)sum / v.size() << endl;
}
int main() {
vector<student> v; //定义一个vector来存储学生信息
int choice;
while (1) {
cout << endl << "**********学生成绩管理系统**********" << endl;
cout << "1.录入学生成绩" << endl;
cout << "2.输出所有记录" << endl;
cout << "3.按学号排序" << endl;
cout << "4.插入一条新的记录" << endl;
cout << "5.删除一条记录" << endl;
cout << "6.根据学生姓名查询成绩" << endl;
cout << "7.对学生成绩进行统计" << endl;
cout << "0.退出系统" << endl;
cout << "请输入您的选择:";
cin >> choice;
switch (choice) {
case 1: {
student s;
cout << "请输入学生姓名:";
cin >> s.name;
cout << "请输入学生学号:";
cin >> s.id;
cout << "请输入学生成绩:";
cin >> s.score;
v.push_back(s);
cout << "录入成功!" << endl;
break;
}
case 2: {
print(v);
break;
}
case 3: {
sort(v.begin(), v.end(), cmp);
cout << "排序成功!" << endl;
break;
}
case 4: {
insert(v);
break;
}
case 5: {
del(v);
break;
}
case 6: {
search(v);
break;
}
case 7: {
stat(v);
break;
}
case 0: {
cout << "感谢使用!" << endl;
return 0;
}
default:
cout << "输入有误,请重新输入!" << endl;
break;
}
}
return 0;
}
```
希望这个简单的示例代码能够帮助到你。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)