精品资料
设计一个学生成绩管理系统,对上学期的本班的学习成绩进行管理,具有查询和检索功能,并且能够对指定文件操作,也可将多个文件组成一个文件。 A、 设计内容
1、每一条记录包括一个学生的学号、姓名、性别、各门课成绩(上学期的科目)、平均成绩。
2、输入功能:可以一次完成若干条记录的输入。 3、显示功能:完成全部学生记录的显示。
4、查找功能:完成按姓名或学号查找学生记录,并显示。 5、排序功能:按学生平均成绩进行排序。 6、插入功能:按学号顺序插入一条学生记录。 7、将学生记录存在文件student.dat中。
8、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观! B、 设计要求
一、 已知有存储本班学生记录(包括学号、姓名、科目成绩、性别、)的文件student.dat,所有学生以学号从小到大排序(该文件自行建立)。要求编程序实现查询、排序、插入、删除诸功能。具体要求如下:
A.要求显示如下界面
****************************************
可修改
精品资料
1--------------查询 2--------------排序 3--------------插入 4--------------删除
**************************************** 通过选择1-4来确定要做哪一个操作。
B.若选1,则出现如下界面
****************************************
1.1----------按学号查询 1.2----------按姓名查询 1.3----------按成绩查询
****************************************
通过选择1.1-1.3来确定要做哪一个操作,其中:按姓名查询用顺序法实现;按成绩查询实现查询成绩小于m分的学生;找到该生将学生记录输出到屏幕,若查无此人,输出相关信息。
C.若选2,则按成绩从大到小排序,姓名,学号顺序也随之调整。 D.若选3,将一个新学生记录按学号顺序插入,并把结果保存到文件student.dat中。
E.若选4,删除指定学生的记录,并把结果保存到文件student.dat中。
可修改
精品资料
G.不同的模块都要有出错处理,并能给出出错提示。如输入数
据错误,文件操作错误等等
F.以上各个功能均编写成子函数,由主函数调用实现。 G.利用结构体数组实现学生成绩的数据结构设计;
模块:
学生成绩管理系统 可修改
精品资料
查询模块 显示模块 插入模块 删除模块 保存模块 排序模块 结束 显示 返回 插入 返回 选择 返回 保存 返回 按学号查询 按姓名查询 按成绩查询 按学号选择删除 按姓名选择删除 返回主菜单 排序 返回 数学 英语 C语言 计算机 健康教育 历史 平均分 返回
程序结构图: main:
int flag=1; struct student *head=NULL; head=load(); Do 可修改
精品资料
switch(menu()) case '0':flag=0;break; case '1':search(head);break; case '2':sort(head);break; case '3':head==NULL?head=insert(head):insert(head); save(head); break; case '4':head=delete(head);save(head);break; case '5':save(head);printf(\ case '6': clrscr();formhead();print(head);break; while(flag) frees(head); int menu();
char ch;textmode(C80);textbackground(BLUE);textcolor(YELLOW); clrscr(); gotoxy(20,3);cprintf(\ gotoxy(20,6);cprintf(\ gotoxy(30,8); cprintf(\ gotoxy(30,10); cprintf(\ gotoxy(30,12); cprintf(\ 可修改