- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计
实验报告
题目名称: 模拟旅馆管理系统——床位的分配与回收
指导教师: 林立新、漆华妹
姓 名: XX
学 号: 090910XXXX
专业班级: 通信工程100X班
日 期: 2012-7-3
前 言
数据结构课程设计是配合数据结构基础课程与实验教学的一个非常重要的教学环节。它是通信工程专业学生的重要基础实践课,能巩固程序编辑的理论知识,提高程序设计水平,加强综合分析问题和解决问题的能力,进一步培养学生的实验技能和动手能力,启发学生的创新意识及创新思维。完成本次课程设计,对进行毕业设计及毕业后从事相关工作都有很大的帮助。
同时,《数据结构》在计算机科学中是一门综合性的专业基础课.数据结构的研究不仅涉及到计算机的硬件的研究范围,而且和计算机软件的研究有着更密切的关系,无论是编译程序还是操作系统,都涉及到数据元素在存储器中的分配问题在研究信息检索时也必须考虑如何组织数据,以便查找和存取数据元素更为方面因此,可以认为数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程.在计算机科学中,数据结构不仅是一般程序设计的基础,而且是设计和实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础。模拟旅馆管理系统的一个功能——床位的分与回收问题描述问题描述:某旅馆有n个等级的房间,第i等级有个房间,每个等级有个床位(1≤I≤n)。试模拟旅馆管理系统中床位分配和回收的功能,设计能为单个旅客分配床位,在其离店便回收床位(供下次分配)的算法。
基本要求(1)输入数据
对房间信息进行初始化,包括房间的类别、数量以及房间和床位的计费标准;
分配时,输入旅客姓名、年龄、性别、到达日期和所需房间等级;
回收时,输入房间等级、房间号和床位号。
(2)输出数据
分配成功时打印旅客姓名、年龄、到达日期、房间等级、房间号码和床位号码。
分配不成功时,如所有等级均无床位,则打印“客满”信息;如旅客需要的等级均无空床位,则打印“是否愿意更换等级?”的询问信息。若旅客愿意更换,则重新输入有关信息,再进行分配,否则分配工作结束。
(3)结帐管理
在旅客离开时计算房费,并打印账单,账单格式自行设计,要求信息齐全、清晰。
(4)对旅客信息和房间信息以及收费标准采用文件的形式存储也可以在程序中初始化。实现提示数据结构主要采用顺序结构链接结构的线性表及堆栈。
每个房间用一个如下所示的具有五个字段的结点(房结点)表示:
性别 房间号 现有空床数 BTOP RLINK ?其中,性别:0表示房间为空状态
1表示房间分配给女旅客
2表示房间分配给男旅客
现有空床数:数据在0~之间,其中是第等级一个房间的床位数,当现有空床数为时,表示房间为空;为0时,表示房间满。
RLINK:当房间空时,用作空房栈的连接;当房间不空时,指向下一个房结点。
BTOP:指向该房间的空床号栈栈顶。一个房间对应一个顺序表示的空床号栈。栈的容量为,栈中存放空床号。分配时,从栈顶取出空床号,栈顶下移(BTOP=BTOP+1);回收时,栈顶上移(BTOP=BTOP-1),将回收的空床号填入栈顶。
每一个等级中的空房间构成一个空房栈;已住旅客的房间构成一个链栈(简称房链),其头结点结构如下:
可分配女床位总数 可分配男床位总数 TTOP RLINK 其中::第等级中房间总数
第等级中每个房间的床位数
可分配男、女床位的总数的初值等于 *bi,因为开始时所有房间和床位既可以分配给男旅客,也可以分配给女旅客。当在房链中分配一个床位给男(女)旅客,床位总数应减1;当从空房栈中取出一个房间作为男(女)旅客房间时,则可分配女(男)床位总数应减,当回收一个男(女)床位时,则可分配男(女)床位总数应加1;当回收一个男(女)空房至空房栈时,则可分配女(男)床位总数应加。
TTOP:指向本级空房栈栈顶,当无空房间时,TTOP=^(NIL)。
RLINK:指向本级房链第一个顶点,当房链为空时,RLINK=^(NIL)
顺序表s=(,其中,顺序存放第1~n等级房间的头结点;
存放内容如下所示:
全店可分配女床总数 全店可分配女床总数 0 0 ^ ^ 初始时,全店可分配男、女床总数相同,均为,在分配或回收时,对各等级可分配男(女)床位总数处理的同时也要对全店可分配男(女)床总数作相应处理,当全店可分配男(女)床总数等于零时,表示客满。
2.参考的ADT
文档评论(0)