|
|
@ -36,33 +36,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
分析系统的功能需求和界面需求,编制用户手册如下。
|
|
|
|
分析系统的功能需求和界面需求,编制用户手册如下。
|
|
|
|
|
|
|
|
|
|
|
|
- 创建学生基本信息,便于之后查询和浏览
|
|
|
|
### C1: 信息创建
|
|
|
|
|
|
|
|
|
|
|
|
- 录入各科学习成绩
|
|
|
|
创建学生基本信息,便于之后查询和浏览。利用结构体————定义STU结构体存储学生学号、姓名、各科成绩,总成绩和平均成绩,利用文件来存储,读取数据。
|
|
|
|
|
|
|
|
|
|
|
|
- 计算每个学生各门课程的总分和平均分
|
|
|
|
```
|
|
|
|
|
|
|
|
typedef struct student{
|
|
|
|
|
|
|
|
long num; //每个学生的学号
|
|
|
|
|
|
|
|
char name[MAX_LEN]; //每个学生的姓名
|
|
|
|
|
|
|
|
float score[COURSE_NUM]; //每个学生COURSE_NUM门功课的成绩
|
|
|
|
|
|
|
|
float sum; //每个学生的总成绩
|
|
|
|
|
|
|
|
float aver; //每个学生的平均成绩
|
|
|
|
|
|
|
|
}STU;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### C2: 成绩录入
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
成绩录入时对结构体中班级、姓名、学号和五门成绩的录入,同时加上对五门成绩平均成绩的计算。按照基本的录入,只需用 scanf 函数对数据输入,用 printf 函数进行汉字的打印即可。然后进行文件保存该组数据,最后判断是否继续录入。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
Input student number(n<%d):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Input course number(m<=%d):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### C3:显示命令菜单
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
显示菜单并获得用户键盘输入的选项
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
Management for Students' scores
|
|
|
|
|
|
|
|
1.Input record
|
|
|
|
|
|
|
|
2.Calculate total and average score of every course
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
### C3:计算每个学生各门课程的总分和平均分
|
|
|
|
|
|
|
|
|
|
|
|
- 计算每门课程的总分和平均分
|
|
|
|
### C4:计算每门课程的总分和平均分
|
|
|
|
|
|
|
|
|
|
|
|
- 按每个学生的总分由高到低排出名次表
|
|
|
|
### C5:按每个学生的总分由高到低排出名次表
|
|
|
|
|
|
|
|
|
|
|
|
- 按每个学生的总分由低到高排出名次表
|
|
|
|
### C6:按每个学生的总分由低到高排出名次表
|
|
|
|
|
|
|
|
|
|
|
|
- 按学号由小到大排出成绩表
|
|
|
|
### C7:按学号由小到大排出成绩表
|
|
|
|
|
|
|
|
|
|
|
|
- 按姓名的字母顺序排出成绩表
|
|
|
|
### C8:按姓名的字母顺序排出成绩表
|
|
|
|
|
|
|
|
|
|
|
|
- 按学号查询学生排名及其考试成绩
|
|
|
|
### C9:按学号查询学生排名及其考试成绩
|
|
|
|
|
|
|
|
|
|
|
|
- 按姓名查询学生排名及考试成绩
|
|
|
|
### C11:按姓名查询学生排名及考试成绩
|
|
|
|
|
|
|
|
|
|
|
|
- 按优秀(90-100)、良好(80-89)、中等(70-79)、及格(60-69)、不及格(0-59)5个类别,对每门课程分别统计每个类别的人数以及所占的百分比
|
|
|
|
### C12:按优秀(90-100)、良好(80-89)、中等(70-79)、及格(60-69)、不及格(0-59)5个类别,对每门课程分别统计每个类别的人数以及所占的百分比
|
|
|
|
|
|
|
|
|
|
|
|
- 输出每个学生的学号、姓名、各科考试成绩、以及每门课程的总分和平均分
|
|
|
|
### C13:输出每个学生的学号、姓名、各科考试成绩、以及每门课程的总分和平均分
|
|
|
|
|
|
|
|
|
|
|
|
- 将每个学生的记录信息写入文件
|
|
|
|
### C14:将每个学生的记录信息写入文件
|
|
|
|
|
|
|
|
|
|
|
|
- 从文件中读出每个学生的记录信息并显示
|
|
|
|
### C15:从文件中读出每个学生的记录信息并显示
|
|
|
|
|
|
|
|
|
|
|
|
## 功能设计
|
|
|
|
## 功能设计
|
|
|
|
|
|
|
|
|
|
|
|