基于C++实现的轻量级学生成绩管理系统,支持学生信息的增删改查、排序、文件持久化存储,适合C++入门学习和项目展示。
| 功能序号 | 功能名称 | 功能描述 |
|---|---|---|
| 1 | 添加学生信息 | 输入学号、姓名、三科成绩,自动计算总分 |
| 2 | 删除学生信息 | 按学号精准删除,未找到则提示 |
| 3 | 修改成绩 | 按学号修改成绩,自动更新总分 |
| 4 | 排序功能 | 支持按总分降序/学号升序排序 |
| 5 | 查找学生 | 按学号精准查找,展示详细信息 |
| 6 | 文件保存 | 将所有学生信息保存到Students.txt文件 |
| 7 | 文件读取 | 从Students.txt加载历史数据,关闭不丢失 |
| 8 | 查看所有学生 | 展示所有学生的完整信息,空数据时友好提示 |
| 9 | 输入校验 | 防字母/越界输入,保证程序健壮性 |
- 数据存储:使用结构体(struct)封装学生信息(学号、姓名、成绩、总分);
- 排序实现:STL sort函数 + lambda匿名函数实现自定义排序规则;
- 持久化存储:fstream实现文件读写,保证数据关闭程序不丢失;
- 输入处理:cin.fail()/cin.clear()/cin.ignore()处理输入异常,防程序崩溃;
- 模块化编程:功能拆分到独立函数,代码结构清晰、易维护;
- 用户体验:system(pause)/cls实现暂停和清屏,界面整洁。
- 操作系统:Windows(兼容Dev-C++ 5.11 / Visual Studio 2022 / Code::Blocks);
- 编译器要求:支持C++11及以上(lambda表达式依赖);
- 依赖头文件:iostream、string、fstream、algorithm、cstdlib(代码已包含)。
- 打开编译器(如Dev-C++),新建项目,粘贴代码并保存;
- 编译并运行程序,控制台显示功能菜单;
- 输入1-9的数字执行对应操作,操作完成后按任意键继续;
- 选择“6.文件保存”可将数据存到本地,“7.文件读取”可加载历史数据;
- 选择“9.退出系统”可正常退出程序。
GitHub:https://github.com/wanmo77/Cpp_StudentScoreManagementSystem
- 完整的功能闭环:覆盖增删改查、排序、持久化,满足入门级项目需求;
- 健壮的异常处理:防输入字母、越界数字、空数据等场景,程序不崩溃;
- 清晰的代码结构:模块化设计,注释完整,易读易扩展。