要求基础简单一点的,不要太难,谢谢。
(凑字数不用管只看图片)
(●♡∀♡)(◕ᴗ◕✿)((づ ̄ ³ ̄)づ(´ω`)
12条回答 默认 最新
关注
引自强大而免费的微信小程序:皆我知道。
以下是一个简单的C++学生成绩系统的实现,并提供了一个符合题设要求的students.txt文件内容:
#include <iostream> #include <fstream> #include <string> #include <vector> #include <algorithm> using namespace std; struct Student { string name; int score; }; vector<Student> students; void addStudent() { Student newStudent; cout << "请输入学生姓名:"; cin >> newStudent.name; cout << "请输入学生成绩:"; cin >> newStudent.score; students.push_back(newStudent); cout << "学生信息添加成功!" << endl; } void displayStudents() { cout << "学生信息如下:" << endl; for (int i = 0; i < students.size(); i++) { cout << "姓名:" << students[i].name << " 成绩:" << students[i].score << endl; } } bool compare(const Student& s1, const Student& s2) { return s1.score > s2.score; } void sortStudents() { sort(students.begin(), students.end(), compare); cout << "学生成绩排序成功!" << endl; } void deleteStudent() { string name; cout << "请输入要删除学生的姓名:"; cin >> name; for (int i = 0; i < students.size(); i++) { if (students[i].name == name) { students.erase(students.begin() + i); cout << "学生信息删除成功!" << endl; return; } } cout << "未找到该学生信息!" << endl; } void modifyStudent() { string name; cout << "请输入要修改学生的姓名:"; cin >> name; for (int i = 0; i < students.size(); i++) { if (students[i].name == name) { cout << "请输入修改后的成绩:"; cin >> students[i].score; cout << "学生信息修改成功!" << endl; return; } } cout << "未找到该学生信息!" << endl; } void searchStudent() { string name; cout << "请输入要查询学生的姓名:"; cin >> name; for (int i = 0; i < students.size(); i++) { if (students[i].name == name) { cout << "姓名:" << students[i].name << " 成绩:" << students[i].score << endl; return; } } cout << "未找到该学生信息!" << endl; } void readFromFile() { ifstream inputFile("students.txt"); if (!inputFile.good()) { cout << "文件打开失败!" << endl; return; } students.clear(); string name; int score; while (inputFile >> name >> score) { Student student; student.name = name; student.score = score; students.push_back(student); } cout << "学生信息从文件中读取成功!" << endl; inputFile.close(); } void deleteFile() { if (remove("students.txt") == 0) { cout << "学生信息文件删除成功!" << endl; } else { cout << "学生信息文件删除失败!" << endl; } } void saveToFile() { ofstream outputFile("students.txt"); if (!outputFile.good()) { cout << "文件打开失败!" << endl; return; } for (int i = 0; i < students.size(); i++) { outputFile << students[i].name << " " << students[i].score << endl; } cout << "学生信息保存成功!" << endl; outputFile.close(); } int main() { int option; while (true) { cout << "---------- 成绩管理系统 ----------" << endl; cout << "1. 录入学生成绩" << endl; cout << "2. 显示学生成绩" << endl; cout << "3. 成绩排列信息" << endl; cout << "4. 添加学生成绩" << endl; cout << "5. 删除学生成绩" << endl; cout << "6. 修改学生成绩" << endl; cout << "7. 查询学生成绩" << endl; cout << "8. 从文件读入学生成绩" << endl; cout << "9. 删除文件中学生信息" << endl; cout << "10. 保存学生信息" << endl; cout << "11. 退出" << endl; cout << "请输入操作选项(1-11):"; cin >> option; switch (option) { case 1: addStudent(); break; case 2: displayStudents(); break; case 3: sortStudents(); break; case 4: addStudent(); break; case 5: deleteStudent(); break; case 6: modifyStudent(); break; case 7: searchStudent(); break; case 8: readFromFile(); break; case 9: deleteFile(); break; case 10: saveToFile(); break; case 11: cout << "感谢使用成绩管理系统!" << endl; return 0; default: cout << "无效的选项!" << endl; break; } cout << endl; } return 0; }
students.txt文件内容:
Lilei 90 Tom 85 Lucy 92
注意:这只是一个简单的实现示例,并没有考虑输入数据的格式验证等方面。在实际使用中,需要根据具体需求进行完善。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 2无用
悬赏问题
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
- ¥15 Windows11, backspace, enter, space键失灵