学生成绩管理系统设计讲稿.ppt
《学生成绩管理系统设计讲稿.ppt》由会员分享,可在线阅读,更多相关《学生成绩管理系统设计讲稿.ppt(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、学生成绩管理系统设学生成绩管理系统设计计第一页,讲稿共二十八页哦18.1 18.1 学生成绩管理系统功能学生成绩管理系统功能本系统实现的功能:本系统实现的功能:(1)录入学生的成绩,)录入学生的成绩,(2)输出学生的成绩)输出学生的成绩(3)添加学生的成绩信息)添加学生的成绩信息(4)删除指定学生的成绩信息)删除指定学生的成绩信息(5)按照要求对学生成绩信息进行排序)按照要求对学生成绩信息进行排序(6)根据学号查询指定学生的成绩)根据学号查询指定学生的成绩(7)将学生的成绩信息保存到文件)将学生的成绩信息保存到文件第二页,讲稿共二十八页哦第三页,讲稿共二十八页哦第四页,讲稿共二十八页哦18.2
2、 18.2 功能模块的描述功能模块的描述 18.2.1 18.2.1 数据结构数据结构结构体说的定义如下:结构体说的定义如下:struct scorenodeint number;/*学生学号学生学号*/char name10;/*学生姓名学生姓名*/float chinese;/*语文成绩语文成绩*/float mathmatic;/*数学成绩数学成绩*/float english;/*英语成绩英语成绩*/struct scorenode*next;typedef struct scorenode score;第五页,讲稿共二十八页哦18.2.2 main()18.2.2 main()主函数
3、主函数程序采用模块化设计,主函数是程序的入口,各模块程序采用模块化设计,主函数是程序的入口,各模块独立,可分块调整,均由主函数控制。采用独立,可分块调整,均由主函数控制。采用while死循环和死循环和switch分支语句编写菜单选择控制各个模块的功能,每个模分支语句编写菜单选择控制各个模块的功能,每个模块的功能由简单的基本函数构成。块的功能由简单的基本函数构成。第六页,讲稿共二十八页哦18.2.3 score 18.2.3 score*creatlink()creatlink()创建动态链表创建动态链表由于记录并不是一次性全部输入,而是随时添加和删由于记录并不是一次性全部输入,而是随时添加和删
4、除的,而预先开辟的空间数往往大于实际的记录数,浪费内除的,而预先开辟的空间数往往大于实际的记录数,浪费内存空间,因此使用动态空间开僻函数存空间,因此使用动态空间开僻函数malloc()为输入的数据为输入的数据动态分配内存空间。动态分配内存空间。第七页,讲稿共二十八页哦18.2.4 void print(score 18.2.4 void print(score*head)head)显示学生信息显示学生信息使用参数使用参数head传递链表的首地址,首先判断链表是否传递链表的首地址,首先判断链表是否为空,如果为空,则输出提示信息;如果不为空,设一个指为空,如果为空,则输出提示信息;如果不为空,设一
5、个指针变量针变量p,先指向第一个结点,输出,先指向第一个结点,输出p所指的结点,然后使所指的结点,然后使p后移一个结点,再输出,直到链表的尾结点。后移一个结点,再输出,直到链表的尾结点。第八页,讲稿共二十八页哦18.2.5 score 18.2.5 score*add(score add(score*head,score head,score*stu)stu)向向链表中添加学生数据链表中添加学生数据该函数有两个数,该函数有两个数,head头结点指向链表的首地址,头结点指向链表的首地址,stu指向新建立的结点,向其中输入数据,然后添加到链表上,指向新建立的结点,向其中输入数据,然后添加到链表上,
6、最后根据学生的学号进行排序。最后根据学生的学号进行排序。第九页,讲稿共二十八页哦18.2.6 score 18.2.6 score*search(score search(score*head)head)查询学生查询学生成绩成绩由于在向链表中输入数据、添加数据的时候,已经对由于在向链表中输入数据、添加数据的时候,已经对链表按学号从大到小排好序了,因此在进行查找时,只需要链表按学号从大到小排好序了,因此在进行查找时,只需要从链表的表头开始进行查询。如果链表为空,则直接输出提从链表的表头开始进行查询。如果链表为空,则直接输出提示信息;如果链表不为空,则按输出的学号进行查询,查询示信息;如果链表不为
7、空,则按输出的学号进行查询,查询成功就输出该学号学生的成绩,否则输出提示信息。成功就输出该学号学生的成绩,否则输出提示信息。第十页,讲稿共二十八页哦18.2.7 score 18.2.7 score*dele(score dele(score*head)head)删除数据删除数据该函数根据输入学生的学号,在链表中进行查找如果该函数根据输入学生的学号,在链表中进行查找如果有匹配的,就将该学号的学生信息删除掉。最后返回删除后有匹配的,就将该学号的学生信息删除掉。最后返回删除后的链表的头结点。的链表的头结点。第十一页,讲稿共二十八页哦18.2.8 score 18.2.8 score*sortdat
8、a(score sortdata(score*head)head)对数据进对数据进行排序行排序该函数提供了几种排序方法,可以按照学生的学号进该函数提供了几种排序方法,可以按照学生的学号进行排序,按照学生的姓名,或者按照学生的单科成绩进行排行排序,按照学生的姓名,或者按照学生的单科成绩进行排序。使用序。使用switch-case语句根据用户的选择,判断是按照学语句根据用户的选择,判断是按照学号、姓名或是单科成绩使用交换法进行排序。号、姓名或是单科成绩使用交换法进行排序。第十二页,讲稿共二十八页哦18.2.9 save(score 18.2.9 save(score*p1)p1)保存数据保存数据在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 设计 讲稿
限制150内