cpp学生成绩管理系统
时间: 2023-11-17 13:04:49 浏览: 68
以下是一个简单的C++学生成绩管理系统的实现,包括学生成绩录入、学生增加以及成绩删改查,所有学生成绩用冒泡排序,各科情况简单分析:
```cpp
#include <iostream>
#include <string>
using namespace std;
// 定义学生结构体
struct Student {
string name; // 学生姓名
int score; // 学生成绩
};
// 冒泡排序函数
void bubbleSort(Student stu[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (stu[j].score < stu[j + 1].score) {
swap(stu[j], stu[j + 1]);
}
}
}
}
int main() {
const int N = 100; // 最多可存储100个学生信息
Student stu[N]; // 存储学生信息的数组
int n = 0; // 学生数量
// 学生成绩录入
cout << "请输入学生数量:";
cin >> n;
for (int i = 0; i < n; i++) {
cout << "请输入第" << i + 1 << "个学生的姓名和成绩:";
cin >> stu[i].name >> stu[i].score;
}
// 所有学生成绩用冒泡排序
bubbleSort(stu, n);
// 学生增加
cout << "请输入要增加的学生的姓名和成绩:";
cin >> stu[n].name >> stu[n].score;
n++;
// 成绩删改查
string name;
cout << "请输入要查询的学生的姓名:";
cin >> name;
for (int i = 0; i < n; i++) {
if (stu[i].name == name) {
cout << "该学生的成绩为:" << stu[i].score << endl;
cout << "请输入新的成绩:";
cin >> stu[i].score;
break;
}
}
// 输出各科情况简单分析
int sum = 0;
for (int i = 0; i < n; i++) {
sum += stu[i].score;
}
double avg = (double)sum / n;
cout << "平均成绩为:" << avg << endl;
cout << "最高分为:" << stu[0].score << endl;
cout << "最低分为:" << stu[n - 1].score << endl;
return 0;
}
```