- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构
课程设计报告
题 目:宿舍管理系统,纸牌游戏,
猴子吃桃,简易文本编辑器,
二叉排序树树的实现
设 计 者:孟欣,沈学发,陈健维,曾炳忠
陈法威,李智超,李斯恺
专业班级: 软件设计111班
学 号: 20110411428、29、30、31
33、34、36
指导教师: 谌颃
所属系部: 计算机科学与技术系
2013年 6月11 日
目录
一、 3
1、方案设计 3
2、算法设计 4
3、调试分析 5
4、总结 9
二、 10
1、问题分析和任务定义 10
2.数据结构的选择和概要设计 11
3.详细设计和编码 12
4.上机调试过程 14
5.测试结果及其分析 14
三、 21
1.任务描述 21
2.需求分析 21
3.本设计所采用的数据结构 22
4. 概要设计 22
5.详细设计 22
6. 测试数据及分析 26
7.课程设计总结 28
四、 29
1、问题描述及要求 29
2、需求分析 29
4、设计概要 30
5、调试内容及测试结果 37
6、课程设计总结 43
五、二叉树的设计与实现 44
1.任务描述 44
2.需求分析 45
3.本设计所采用的数据结构 46
4.概要设计 46
5.详细设计 46
6.测试数据及分析 49
7.课程设计总结 51
五、参考文献 51
六、附录(代码) 52
1、附录一(宿舍管理查询软件实现代码) 52
2、附录二(纸牌游戏的设计与实现代码) 65
3、附录三(猴子吃桃的问题代码) 68
4、附录四(简易文本编辑器的设计与实现代码) 72
5、附录五(二叉排序树的实现代码) 86
宿舍管理系统
1、方案设计
1.1任务
为宿舍管理人员编写一个宿舍管理查询软件
1.1.1程序设计要求:
①采用交互工作方式
②建立数据文件 ,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)
1.1.2 开发设计思想
基于以上系统设计目标本文在开发人事管理信息系统时遵循了以下开发设计思想:
(1)采用现有的软硬件环境及先进的管理系统开发方案从而达到充分利用现有资源提高系统开发水平和应用效果的目的。
(2)尽量达到操作过程中的直观、方便、实用、安全等要求。
(3)系统采用模块化程序设计方法既便于系统功能的各种组合和修改又便于未参与开发的技术维护人员补充、维护。
1.1.3查询菜单: (用二分查找实现以下操作)
①按姓名查询
②按学号查询
③按房号查询
1.1.4打印任一查询结果(可以连续操作)
1.2功能
根据上述要求,我们开始考虑系统应具备的功能:
①要实现交互工作方式,各项操作结束后均应返回主菜单;
②系统本无任何信息数据,要建立数据文件,需开发一个信息录入功能,即首先创建一个学员线性表,同时我们可以将数据暂时保存在内存中,所以我们未开发信息存盘功能;
③信息录入后都保存在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应该便于查阅,所以需具备按各种关键字显示的功能;
④本系统按关键字(姓名、学号、房号)进行冒泡排序,采用二分查找方式分别实现按关键字(姓名、学号、房号)查询功能;
⑤由于有些同学因为不同原因而离校,所以设计了删除功能;
⑥由于有新同学入校,所以设计了插入功能;
⑦当用户操作完毕需要退出时,我们提供了退出选项,便于使用者退出交互式工作系统。
2、算法设计
2.1线性表的顺序存储
2.1.1存储结构
本系统定义的存储结构采用结构体数组,结构体为:
typedef struct //定义结构体成员
{
char name[20];
int num; //学号和房号都为整型
int room;
}stu;
stu stud;
typedef struct
{
int length; //当前长度
stu *elem; //存储空间基址
int listsize; //当前分配的存储容量
}linklist; 在此说明每个部分的算法设计说明(可以是描述算法的流程图)
2.1.2程序流程图
3、调试分析
3.1使用方法
首先,运行程序进入“欢迎进入宿舍管理查询系统”界面,然后进入线性表创建界面中,输入学生的信息,创建好学生信息以后单击“n”键则进入操作界面(主界面),然后可按键进行操作。
单击数字键“1”,则为按姓名排序 单击数字键“2”,则为按学号排序
文档评论(0)