用c++写一个学生成绩管理系统 主要功能: (1)学生成绩的录入及查询、修改 (2)学生成绩统计,总分及平均分,可以根据学生成绩进行排序。 (3)能输出学生成绩 (4)能删除学生信息。
时间: 2024-01-15 18:04:00 浏览: 256
今天给大家分享一个C语言环境下开发的学生成绩管理系统 这个系统原理很简单:成绩的录入,输出,修改,排序,删除等等
好的,您需要用C++语言编写一个学生成绩管理系统,主要实现以下功能:
1. 学生成绩的录入及查询、修改
2. 学生成绩统计,总分及平均分,可以根据学生成绩进行排序
3. 输出学生成绩
4. 删除学生信息
下面是一个简单的实现,供您参考:
```cpp
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
// 学生信息结构体
struct Student {
string name;
int id;
double grade;
};
// 定义学生信息数组
vector<Student> students;
// 录入学生成绩
void addStudent() {
Student student;
cout << "请输入学生姓名:";
cin >> student.name;
cout << "请输入学生学号:";
cin >> student.id;
cout << "请输入学生成绩:";
cin >> student.grade;
students.push_back(student);
cout << "学生信息添加成功!" << endl;
}
// 查询学生成绩
void queryStudent() {
int id;
cout << "请输入学生学号:";
cin >> id;
for (int i = 0; i < students.size(); i++) {
if (students[i].id == id) {
cout << "学生姓名:" << students[i].name << endl;
cout << "学生学号:" << students[i].id << endl;
cout << "学生成绩:" << students[i].grade << endl;
return;
}
}
cout << "未找到该学生信息!" << endl;
}
// 修改学生成绩
void modifyStudent() {
int id;
cout << "请输入学生学号:";
cin >> id;
for (int i = 0; i < students.size(); i++) {
if (students[i].id == id) {
cout << "请输入学生新成绩:";
cin >> students[i].grade;
cout << "学生成绩修改成功!" << endl;
return;
}
}
cout << "未找到该学生信息!" << endl;
}
// 统计学生成绩
void countGrade() {
int sum = 0;
double avg = 0.0;
for (int i = 0; i < students.size(); i++) {
sum += students[i].grade;
}
avg = (double)sum / students.size();
cout << "学生成绩总分:" << sum << endl;
cout << "学生成绩平均分:" << avg << endl;
}
// 排序学生成绩
bool cmp(Student a, Student b) {
return a.grade > b.grade;
}
void sortGrade() {
sort(students.begin(), students.end(), cmp);
cout << "学生成绩排序成功!" << endl;
}
// 输出学生成绩
void printGrade() {
for (int i = 0; i < students.size(); i++) {
cout << "学生姓名:" << students[i].name << endl;
cout << "学生学号:" << students[i].id << endl;
cout << "学生成绩:" << students[i].grade << endl;
}
}
// 删除学生信息
void deleteStudent() {
int id;
cout << "请输入学生学号:";
cin >> id;
for (int i = 0; i < students.size(); i++) {
if (students[i].id == id) {
students.erase(students.begin() + i);
cout << "学生信息删除成功!" << endl;
return;
}
}
cout << "未找到该学生信息!" << endl;
}
int main() {
int option;
while (true) {
cout << "请选择操作:1. 录入学生成绩 2. 查询学生成绩 3. 修改学生成绩 4. 统计学生成绩 5. 排序学生成绩 6. 输出学生成绩 7. 删除学生信息 8. 退出" << endl;
cin >> option;
switch (option) {
case 1:
addStudent();
break;
case 2:
queryStudent();
break;
case 3:
modifyStudent();
break;
case 4:
countGrade();
break;
case 5:
sortGrade();
break;
case 6:
printGrade();
break;
case 7:
deleteStudent();
break;
case 8:
exit(0);
default:
cout << "请输入正确的操作序号!" << endl;
break;
}
}
return 0;
}
```
该程序通过一个循环菜单,提供了丰富的学生成绩管理功能,包括录入学生成绩、查询学生成绩、修改学生成绩、统计学生成绩、排序学生成绩、输出学生成绩、删除学生信息等。您可以根据自己的需求进行修改和扩展。
阅读全文