├── scores.txt
├── achievement.c
├── img
├── main.PNG
├── sub.PNG
└── interface.PNG
├── scores2.txt
└── README.md
/scores.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EugeneJie/achievement/HEAD/scores.txt
--------------------------------------------------------------------------------
/achievement.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EugeneJie/achievement/HEAD/achievement.c
--------------------------------------------------------------------------------
/img/main.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EugeneJie/achievement/HEAD/img/main.PNG
--------------------------------------------------------------------------------
/img/sub.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EugeneJie/achievement/HEAD/img/sub.PNG
--------------------------------------------------------------------------------
/img/interface.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EugeneJie/achievement/HEAD/img/interface.PNG
--------------------------------------------------------------------------------
/scores2.txt:
--------------------------------------------------------------------------------
1 | 23140223 zhu 55 69 78 91 86 75
2 | 23140425 chen 79 86 85 60 57 53
3 | 23140523 wang 64 79 92 87 80 72
4 | 23150317 zhang 94 85 50 79 82 75
5 | 23150810 li 90 49 63 87 70 89
6 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 学生成绩管理系统
2 | ## 项目说明
3 | 某班有最多不超过`30人`(具体人数由键盘输入)参加期末考试,最多不超过`6门`(具体门数由键盘输入)。使用结构体数组编程成实现如下菜单驱动的学生成绩管理系统。
4 | * 从文件读取每个学生个人信息和成绩信息(`scores.txt`、`scores2.txt`为示例文件),可以由键盘输入文件名。读入成功提示读入学生记录的个数,不成功提示相应出错信息。
5 | * 手动录入每个学生的学号(8位数字)、姓名和各科考试成绩。不考虑重名情况下的处理,学生的学号是唯一的。
6 | * 计算每门课程的总分和平均分。
7 | * 按每个学生的总分由高到低排出名次表。
8 | * 按学号由小到大排出成绩表。
9 | * 按姓名查询学生排名及其考试成绩。
10 | * 按`优秀(100-90)`、`良好(89-80)`、`中等(79-70)`、`及格(69-60)`、`不及格(59-0)`5个类别,对每门课程分别统计每个类别的人数以及所占的百分比,并将计算结果输出到屏幕。
11 | * 输出每个学生的学号、姓名、各科考试成绩、总分和平均分。
12 |
13 |
14 | 程序运行后先显示如下菜单,并提示用户输入选项(菜单循环显示,直到选择 `0.退出系统` 整个程序退出):
15 |
16 |
17 | > 1.读取文件数据
18 | > 2.手动录入
19 | > 3.计算每门课程的总分和平均分
20 | > 4.按学生总分由高到低排出名次表
21 | > 5.按学号由小到大排出成绩表
22 | > 6.按姓名查询学生排名及其考试成绩
23 | > 7.统计
24 | > 8.输出
25 | > 9.写入文件
26 | > 0.退出系统
27 | > 请选择并输入对应的菜单项:
28 |
29 |
30 | 然后根据用户输入的选项进行相应的操作。
31 |
32 |
33 | ## 系统设计
34 | * 主函数流程图
35 |
36 |
37 | 
38 |
39 |
40 | * 各子函数流程图
41 |
42 |
43 | 
44 |
45 |
46 | ## 界面展示
47 | 
48 |
--------------------------------------------------------------------------------