用c++语言创建一个学生成绩管理系统的代码,要求拥有两个主菜单,从主菜单能够进入子菜单,子要求实现增加删除修改等功能,并将输入内容保存至txt文件中
时间: 2023-06-27 12:05:20 浏览: 45
很高兴为您提供C++学生成绩管理系统的代码。
本系统包含以下功能:
1. 添加学生信息
2. 删除学生信息
3. 修改学生信息
4. 显示所有学生信息
5. 保存学生信息到txt文件中
6. 退出程序
以下是完整的代码:
```c++
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
struct Student {
string name;
int age;
int score;
};
vector<Student> students;
void printMenu() {
cout << "=======================" << endl;
cout << "1. 添加学生信息" << endl;
cout << "2. 删除学生信息" << endl;
cout << "3. 修改学生信息" << endl;
cout << "4. 显示所有学生信息" << endl;
cout << "5. 保存学生信息到txt文件中" << endl;
cout << "6. 退出程序" << endl;
cout << "=======================" << endl;
}
void addStudent() {
Student student;
cout << "请输入学生姓名:";
cin >> student.name;
cout << "请输入学生年龄:";
cin >> student.age;
cout << "请输入学生分数:";
cin >> student.score;
students.push_back(student);
cout << "添加成功!" << endl;
}
void deleteStudent() {
string name;
cout << "请输入要删除的学生姓名:";
cin >> name;
for (auto it = students.begin(); it != students.end(); it++) {
if (it->name == name) {
students.erase(it);
cout << "删除成功!" << endl;
return;
}
}
cout << "未找到该学生!" << endl;
}
void modifyStudent() {
string name;
cout << "请输入要修改的学生姓名:";
cin >> name;
for (auto& student : students) {
if (student.name == name) {
cout << "请输入学生年龄:";
cin >> student.age;
cout << "请输入学生分数:";
cin >> student.score;
cout << "修改成功!" << endl;
return;
}
}
cout << "未找到该学生!" << endl;
}
void showStudents() {
cout << "姓名\t年龄\t分数" << endl;
for (auto& student : students) {
cout << student.name << "\t" << student.age << "\t" << student.score << endl;
}
}
void saveToFile() {
ofstream outfile("students.txt");
if (!outfile) {
cout << "无法打开文件!" << endl;
return;
}
for (auto& student : students) {
outfile << student.name << " " << student.age << " " << student.score << endl;
}
outfile.close();
cout << "保存成功!" << endl;
}
int main() {
int choice;
while (true) {
printMenu();
cout << "请输入功能选项:";
cin >> choice;
switch (choice) {
case 1:
addStudent();
break;
case 2:
deleteStudent();
break;
case 3:
modifyStudent();
break;
case 4:
showStudents();
break;
case 5:
saveToFile();
break;
case 6:
cout << "退出程序!" << endl;
return 0;
default:
cout << "无效选项,请重新输入!" << endl;
break;
}
}
}
```
使用方法:
1. 打开终端,进入文件所在目录。
2. 编译代码:`g++ main.cpp -o main`
3. 运行程序:`./main`
程序运行后,按照提示进行操作即可。学生信息将保存在内存中,可以使用“保存学生信息到txt文件中”功能将学生信息保存到txt文件中。每个学生的信息包括姓名、年龄、分数,保存到txt文件中的格式为每行一个学生信息,以空格隔开。