数据结构课程设计——宿舍管理查询软件

数据结构课程设计——宿舍管理查询软件

ID:31916910

大小:314.50 KB

页数:24页

时间:2019-01-27

数据结构课程设计——宿舍管理查询软件_第1页
数据结构课程设计——宿舍管理查询软件_第2页
数据结构课程设计——宿舍管理查询软件_第3页
数据结构课程设计——宿舍管理查询软件_第4页
数据结构课程设计——宿舍管理查询软件_第5页
资源描述:

《数据结构课程设计——宿舍管理查询软件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.数据结构课程设计宿舍管理查询软件班级学号班学生姓名提交日期2015年7月24日成绩计算机与通信工程学院...一、需求分析1、程序设计任务为宿舍管理人员编写一个宿舍管理查询软件。①程序设计要求:A.采用交互工作方式B.建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)②查询菜单:(用二分查找实现以下操作)A.按姓名查询B.按学号查询C.按房号查询③打印任一查询结果(可以连续操作)2、功能①要实现交互工作方式,各项操作结束后均应返回主菜单;②系统本无任何信息数据,

2、要建立数据文件,需开发一个信息录入功能,即首先创建一个学员线性表,同时我们可以将数据暂时保存在内存中,所以我们未开发信息存盘功能;③信息录入后都保存在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应该便于查阅,所以需具备按各种关键字显示的功能;④本系统按关键字(姓名、学号、房号)进行冒泡排序,采用二分查找方式分别实现按关键字(姓名、学号、房号)查询功能;⑤由于有些同学因为不同原因而离校,所以设计了删除功能;⑥由于有新同学入校,所以设计了插入功能;⑦当用户操作完毕需要退出时,我们提供了退出选项,

3、便于使用者退出交互式工作系统。3、功能模块图...3、流程图4、输入和输出①输入的形式1)开始创建线性表:按先后顺序输入姓名(20个字以内),学号(整型),房号(整型)。2)根据用户所选择的操作键,然后再根据程序的相应提示进行输入。选择操作键1(按姓名排序):无输入;选择操作键2(按学号排序):无输入;选择操作键3(按房号排序):无输入;...选择操作键4(按姓名查找):输入要查找的姓名;选择操作键5(按学号查找):输入要查找的学号;选择操作键6(按房号查找):输入要查找的房号;选择操作键7(按学号插入

4、):按照提示顺序输入要插入的学生姓名,学号,房号;选择操作键8(按学号删除):输入要删除学生的学号。②输出的形式及范围根据用户选择的不同,会有不同的输出。选择操作键1(按姓名排序):输出以姓名首字母排序的所有学生信息;选择操作键2(按学号排序):输出按学号从小到大排列的所有学生信息;选择操作键3(按房号排序):输出按房号从小到大排列的所有学生信息;选择操作键4(按姓名查找):若查找成功,则输出相应学生信息,若不成功,则输出该学生不存在;选择操作键5(按学号查找):若查找成功,则输出相应学生信息,若不成功

5、,则输出该学生不存在;选择操作键6(按房号查找):若查找成功,则输出相应学生信息,若不成功,则输出该学生不存在。选择操作键7(按学号插入):输出插入后的所有学生信息;选择操作键8(按学号删除):输出所需删除的学生信息,确认删除后,输出删除后的所有学生信息。3、测试数据开始录入的数据:姓名学号房号刘备1102孙权6231周瑜3124正确输入:查找的数据:6(按学号)正确输出:孙权6231二、详细设计1、数据结构typedefstruct//定义结构体成员{charname[20];intnum;//学号和

6、房号都为整型introom;}stu;stustud;typedefstruct{intlength;//当前长度stu*elem;//存储空间基址intlistsize;//当前分配的存储容量}linklist;2、数据intf;f为全局变量,指选择的操作键数...charname[20];name为姓名intnum;num为学号introom;room为房号intlength;length为线性表的当前长度stu*elem;elem指示线性表的基地址intlistsize;listsize为当前分配

7、的存储容量charc;c为进入主界面的任意键charch;ch为判断字符y或ninti,j;在冒泡排序中,i为外层循环次数,j为内层循环次数inti;在打印学生信息时,i作为循环变量intm;intn;inta;m,n,a在二分查找中分别代表房号,学号,姓名inti,j,k;i,j,k在按学号插入中作为循环变量inti,j,k=-1;i,j,k在按学号删除中作为循环变量3、函数调用具体函数如下:voidinit(linklist&l):用于线性表初始化,通过调用C语言文件操作函数来实现。voidcrea

8、te(linklist&l):用于创建学生信息表,通过线性表来实现。voidsort3(linklist&l):用于按房号排序,通过采用冒泡排序的算法来实现。voidsort2(linklist&l):用于按学号排序,通过采用冒泡排序的算法来实现。voidsort1(linklist&l):用于按姓名排序,通过采用冒泡排序的算法来实现。voidchazhao3(linklist&l):用于按房号从小到大查找,通过采用二分查找的算法来实现。v

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。