mirror of
https://github.com/yv1ing/Student-Information-Management-System.git
synced 2025-09-16 14:44:46 +08:00
138 lines
8.2 KiB
Markdown
138 lines
8.2 KiB
Markdown
# 学生信息管理系统
|
||
|
||
## 概述
|
||
|
||
本套系统是我大一程序设计进阶课的结课作业,实现了登录、文件读写,以及对数据的查询、排序等操作。
|
||
|
||
1、单人完成代码的编写(本以为几百行能解决的系统,前前后后写了两千多行,虽然很多是注释...)
|
||
|
||
2、本套系统基于Windows系统,执行C11标准。
|
||
|
||
3、项目使用Clion集成环境开发。
|
||
|
||
4、项目模块化,将不同功能写在不同的源文件中,通过头文件集中管理和调用。
|
||
|
||
5、用户输入检测,只允许用户输入规则内的数据,不合法的数据一律提示重新输入。
|
||
|
||
**相关文件的解释:**
|
||
|
||
| 文件 | 解释 |
|
||
| ----------------------------------------- | -------------------------------------------- |
|
||
| for_main.h | 包含主函数所需的所有头文件 |
|
||
| user.h | 定义登录用户的相关信息结构体 |
|
||
| stu_info.h | 定义用于存储学生信息的结构体 |
|
||
| for_function_module.h | 包含每个模块函数所需的头文件以及主函数的声明 |
|
||
| main.c | 主函数 |
|
||
| main_menu.h & main_menu.c | 主菜单模块 |
|
||
| secondary_menu.h & secondary_menu.c | 二级菜单模块 |
|
||
| login_module.h & login_module.c | 登录模块 |
|
||
| registered_module.h & registered_module.c | 用户注册模块 |
|
||
| add_module.h & add_module.c | 学生信息添加模块 |
|
||
| query_module.h & query_module.c | 学生信息查询模块 |
|
||
| modify_module.h & modify.c | 学生信息修改模块 |
|
||
| delete_module.h & delete_module.c | 学生信息删除模块 |
|
||
| statistic_module.h & statistic_module.c | 成绩统计模块 |
|
||
|
||
|
||
|
||
## 系统结构
|
||
|
||
- 主菜单
|
||
- 二级菜单
|
||
- 登录模块
|
||
- 注册模块
|
||
- 学生信息添加模块
|
||
- 学生信息查询模块
|
||
- 学生信息修改模块
|
||
- 学生信息删除模块
|
||
- 成绩统计
|
||
|
||
## 功能详解
|
||
|
||
### 一、主菜单
|
||
|
||
本系统设置有权限,只有注册账号后输入正确的账号密码才能进入。
|
||
|
||
主菜单设置有输入内容的控制功能,即检测输入内容是否合法:
|
||
|
||

|
||
|
||
### 二、登录模块
|
||
|
||

|
||
|
||
输入正确的账号密码即可进入系统。
|
||
|
||
### 三、二级菜单
|
||
|
||

|
||
|
||
二级菜单中提供5个功能,输入代码即可跳转至对应功能。
|
||
|
||
二级菜单设置有输入内容的控制功能,即检测输入内容是否合法:
|
||
|
||

|
||
|
||
### 四、学生信息添加模块
|
||
|
||

|
||
|
||
在此模块中,需依次输入学生的学号、姓名、性别、年龄、语文成绩、数学成绩、英语成绩。
|
||
|
||
输入结束后,学生信息被保存在stu_info目录下的stu_info.txt文件中:
|
||
|
||

|
||
|
||
输入结束后,提示是否继续添加,选择”是“则当前界面清除,进入下一轮的输入,否则返回二级菜单。
|
||
|
||
本模块同样设置有输入内容检测功能,非法输入无效。
|
||
|
||
### 五、学生信息查询模块
|
||
|
||

|
||
|
||
本系统支持按学号、姓名和性别查询学生信息,输入要查询的学生的学号、姓名或性别均可查询。
|
||
|
||

|
||
|
||

|
||
|
||
若系统中没有要查询的学生信息,则提示:
|
||
|
||

|
||
|
||
### 六、学生信息修改模块
|
||
|
||

|
||
|
||
本系统支持按学号、姓名查询学生信息并修改。
|
||
|
||

|
||
|
||
依次输入修改后的学生学号、姓名、性别、年龄及各科成绩即可。
|
||
|
||
### 七、学生信息删除模块
|
||
|
||

|
||
|
||
本系统支持按学号、姓名和性别删除学生信息,输入学生的学号、姓名或性别均可删除相关信息。
|
||
|
||

|
||
|
||
### 八、成绩统计模块
|
||
|
||
本系统支持对单科成绩的查询,包括升序、降序查询和分数段查询,同时显示该科目的平均分。
|
||
|
||

|
||
|
||
按语文成绩升序查询:
|
||
|
||

|
||
|
||
按数学成绩降序查询:
|
||
|
||

|
||
|
||
|
||
|