- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构》
课程设计报告
课题名称:_考生报名管理系统_
专业班级: 11软件2班
学 号: 20110311220
姓 名:____胡德义______
指导老师: 刘 杰
成 绩:__________________
2012年12月
一、课题名称
考生报名管理系统。
二、主要内容
考生报名管理系统的设计主要是实现对考生报考相应类别考试的管理和相关操作。基本功能如下:
(1)考试报考息录入、添加功能:包括考生的考号、姓名、性别、年龄、籍贯、考试类别(如:计算机二级VC,英语四级等)等信息。
(2)报考信息查询:①可以按考生的考号查询某个考生的报考信息。②可以按考试类别查询所有报告改类别的学生信息
(3)报考信息排序:①按考生的考号升序排序。②按考试类别升序排序,考试类别相同时再按考试考号升序排序。
(4)考生报考信息的修改、删除功能:按考生考号修改或删除某个考生的相关信息。
(5)统计功能:分别统计系统中共有多少人报名、每个考生的报考种类的数量、每种考试类别的考生数量等。
三、课题设计的基本思想,原理和算法描述
对于这个题目很显然用线性表的顺序存储再好不过了,根据题目的要求得出应有11个功能函数,主要十个函数模块,并利用循环实现多次操作。
其界面为:
图 1 主菜单界面设计图
对应的具体情况为:
(1) 添加函数。其重点是添加重号的问题,当重号时要判断除了考试类别其他元素手否完全相同,当然同一个学生的考试类别要不同,再添加时也要判断,具体的算法是利用while循环,若添加失败则循环,否则停止。
(2) 利用学号查询函数。
(3)利用考试类别查询函数。主要就是strcmp这个函数。
(4)利用学号排序函数(升序)。本程序是利用冒泡排序,值得注意的是在交换位置时同时要该其内在的元素,因为其是一个整体,不像单一的值。先比较学号而后比较考试类别,
(5)利用考试类别排序函数(升序)。其算法与4相同,唯有的区别是其顺序颠倒。
(6)修改函数1。其主要的功能是改变一个学号对应的姓名,性别,年龄,籍贯但考试类别不能改变,因为一个学号对应多个考试类别。
(7)修改函数2。其主要是修改某个学号对应的其中的一个考试类别,即改变某个学生的一门考试。
(8)删除函数1。主要删除一个考生的一门报考科目。
(9)删除函数2。其目的是删除一个考生的所有报考科目,即删除这个考生。
(10)统计函数。针对所有数据从三个方面统计,分别是:每种考试类别有多少人报考科,每个考生报考了几门,一共有多少人参与报考。
(11)退出函数。
其流程图如下:
图 2 主菜单流程图
模块的主要的难点是:1.创建时,要判断是否重号,若是立马判断基本信息是否完全匹配,而后还要判断其考试类别是否已添加。2.以考试类别统计时因为没有定下有几个考试类别,所以要普查线性表看有多少种考试类别,并把其存放起来,然后在普查一遍统计各个的个数,以学号统计类同。
四、运行示例及结果分析
图 1 (成功添加一个学生)
图 2 (再次添加这个学生时信息不一致和即使信息一致课程却以报考了)
图 3 (输入的学号查不到的情况)
图 4 (查询1号时的结果)
图 5 (输入的考试类别查不到时)
图 6 (输入11查找后的结果)
图 7 (按学号升序排序)
图 8 (按考试类别升序排序结果)
图 9 (输入的学号不存在无法修改)
图 10 (将1号的除了考试类别的信息修改了)
图 11 (输入的学号不存在不能修改)
图 12 (即使学号有了 考试类别不存在也不能修改)
图 13 (修改后的考试类别不能与以添加的相同)
图 14 (修改成功的结果)
图 15 (找不到删除的学号)
图 16 (学号与考试类别必须都匹配否则不能删除)
图 17 (删除一个某个考生的一个考试类别)
图 18 (删除的学号不存在)
图 19 (删除一个考生的所有考试类别的结果)
图 20 (从考试类别,学号,总人数进行统计)
五、调试和运行程序过程中产生的问题及采取的措施
1.对要求分析的错误。开始自己的理解是学号不能重复,但要求中要求统计每个学生,显然学生的学号可以重复的,只要他的考试类别不同即可,当然不重号也是可以的,那就是对考试类别进行再分割,但是不同的学生具有不同的考试数目,因而在统计的时候十分麻烦,显然用重号解决跟优;
2.总体设计的不足。对几个主要的功能函数的设计还是比较全面的,然而为了使运行的结果具有对比性和他人对程序的操作更简单,应该在实现每个函数前把数据输出,便于运行者功判断模块函数是否正确,刚开始没想到。
3.模块函数的问题与不足。
模
文档评论(0)