C++ 学生成绩管理系统:输入、查询、修改、统计 日期: 2028-06-04 标签: 常规 "#include \n#include \n#include \n\nusing namespace std;\n\nstruct Student {\n string name;\n int score;\n};\n\nmap<int, Student> students;\n\nvoid inputData() {\n int id;\n string name;\n int score;\n \n cout << "请输入学生学号:";\n cin >> id;\n cout << "请输入学生姓名:";\n cin >> name;\n cout << "请输入学生成绩:";\n cin >> score;\n \n if (students.find(id) != students.end()) {\n cout << "学号已存在,请重新输入!" << endl;\n return;\n }\n \n students[id] = {name, score};\n \n cout << "数据输入成功!" << endl;\n}\n\nvoid queryScore() {\n int choice;\n cout << "请选择查询方式(1-按学号查询,2-按姓名查询):";\n cin >> choice;\n \n if (choice == 1) {\n int id;\n cout << "请输入学生学号:";\n cin >> id;\n \n if (students.find(id) != students.end()) {\n cout << "学号:" << id << ",姓名:" << students[id].name << ",成绩:" << students[id].score << endl;\n } else {\n cout << "未找到该学生!" << endl;\n }\n } else if (choice == 2) {\n string name;\n cout << "请输入学生姓名:";\n cin >> name;\n \n bool found = false;\n for (const auto& it : students) {\n if (it.second.name == name) {\n cout << "学号:" << it.first << ",姓名:" << it.second.name << ",成绩:" << it.second.score << endl;\n found = true;\n }\n }\n \n if (!found) {\n cout << "未找到该学生!" << endl;\n }\n } else {\n cout << "输入无效!" << endl;\n }\n}\n\nvoid modifyScore() {\n int id;\n cout << "请输入要修改成绩的学生学号:";\n cin >> id;\n \n if (students.find(id) != students.end()) {\n cout << "请输入新的成绩:";\n cin >> students[id].score;\n cout << "成绩修改成功!" << endl;\n } else {\n cout << "未找到该学生!" << endl;\n }\n}\n\nvoid outputAllScores() {\n for (const auto& it : students) {\n cout << "学号:" << it.first << ",姓名:" << it.second.name << ",成绩:" << it.second.score << endl;\n }\n}\n\nvoid countPassAndExcellent() {\n int passCount = 0;\n int excellentCount = 0;\n \n for (const auto& it : students) {\n if (it.second.score >= 60) {\n passCount++;\n }\n if (it.second.score >= 90) {\n excellentCount++;\n }\n }\n \n cout << "及格人数:" << passCount << endl;\n cout << "优秀人数:" << excellentCount << endl;\n}\n\nint main() {\n students[220101] = {"张三", 92};\n students[220102] = {"李四", 85};\n students[220103] = {"王五", 70};\n students[220104] = {"陈六", 60};\n students[220105] = {"钱七", 80};\n students[220106] = {"Jessi", 90};\n students[220107] = {"Yoon Suk Yeol", 3};\n \n int choice;\n while (true) {\n cout << "" << endl;\n cout << "学生成绩管理系统" << endl;\n cout << "" << endl;\n cout << "" << endl;\n cout << "1--输入数据" << endl;\n cout << "2--查询成绩******" << endl;\n cout << "3--修改成绩*********************" << endl;\n cout << "4--输出所有学生成绩*************" << endl;\n cout << "5--统计及格和优秀人数***********" << endl;\n cout << "6--退出系统*********************" << endl;\n cout << "0--清屏*************************" << endl;\n cout << "************************************" << endl;\n cout << "请选择功能:";\n cin >> choice;\n \n switch (choice) {\n case 0:\n system("clear");\n break;\n case 1:\n inputData();\n break;\n case 2:\n queryScore();\n break;\n case 3:\n modifyScore();\n break;\n case 4:\n outputAllScores();\n break;\n case 5:\n countPassAndExcellent();\n break;\n case 6:\n cout << "系统已退出!" << endl;\n return 0;\n default:\n cout << "输入无效!" << endl;\n break;\n }\n }\n \n return 0;\n 原文地址: https://www.cveoy.top/t/topic/pxFQ 著作权归作者所有。请勿转载和采集! 免费AI点我,无需注册和登录