资源预览内容
第1页 / 共63页
第2页 / 共63页
第3页 / 共63页
第4页 / 共63页
第5页 / 共63页
第6页 / 共63页
第7页 / 共63页
第8页 / 共63页
第9页 / 共63页
第10页 / 共63页
亲,该文档总共63页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
C课程设计酒店客房管理系统22020年4月19日文档仅供参考 计算机学院课程设计报告 课程名称: C+课程设计 课 题: 客房管理系统 专业班级: 学 号: 姓 名: 指导老师: 日 期: 7 月3 日 目录1.课题简介03 2.设计方案043.具体设计及截屏图054.关键代码分析105.测试156.课题总结与体会177.参考文献188.源代码191.课题简介客房管理系统是根据某酒店对客房管理的实际情况进行编写的,主要目的是为了方便酒店对客房的实际情况进行集中的查询与管理工作,以提高整个酒店的工作。经过电脑及生活中的调查研究,根据客人的经济水平和生活理念,客房的类型已趋向于多样化,有标准房,单人房,VIP间,甚至总统套房。而初步设定经过客房的编号、类型、价格来定位一个客房的管理系统。客房是一个对外服务的内容,为了客人的住宿要求,因此系统需要实现客房信息的录入、修改和删除功能。客人对剩余客房需要进行选择,系统必须实现相应的查询、排序和输出功能,使客人择优而居。主要实现的功能包括:客房信息的录入、修改、删除、剩余客房信息查询、排序、输出。客房信息可写入文件,也可从文件中读取。客房信息涉及的数据有客房编号、客房类型、住房天数、订金、客户姓名、客户身份证号码等。2设计方案按照需求分析所得,客房信息系统有以下几个功能模块:1 新建两个类;分别为Customer和HolterRoom ,其中Customer为基类,HolterRoom经过共有继承,成为Customer的派生类。2 录入,增添客房信息;先判断是否已存在客房信息,如果已存在,则再选择是否添加;若不存在,则添加客房信息。3修改客房信息;读取保存的客房信息数据,根据客房编号查找所需修改的客房信息,然后根据具体所需,修改成员参数。4删除客房信息模块;从保存中的文件中读取信息,删除需要删除的信息,完善现在的客房运作。5查询客房函数;分按编号、类型、客户姓名查找客房信息,这样能够更具有人性化来选择所剩余的客房,从而进行日常安排。7输出剩余客房函数;输出根据系统所需排序后的客房信息,本系统中是根据了客人入住的有效期即天数来及时了解空出的房间。由上述需求分析可得,系统的功能模块图如图1所示。 酒店客房管理系统录入客房信息客人入住登记修改客房信息客人退房结算输出所有客房信息查询窗口删除客房信息经过房号查询客房输出所有空房经过姓名查询客房经过房号查询客房 图1 2.具体设计及截屏图1、类的设计根据上述需求分析,有客房类和客户类。(1) 客户类 客户类中的主要成员有:name为客户姓名,ID为客户身份证号码,money为客户订金,StayTime为将要入住客房时长。(2)客房类客房类中的主要成员有:num是客房编号,Type是客房类型,Price是客房价格, HolterRoom()为客房类的构造函数,同时Customer类中的成员均是客房类的成员。2界面设计:(1) 主界面的设计主界面中显示客房管理系统的全部信息,客房信息的录入,客人入住登记,客房信息的修改,客人退房结算,查询所有客房信息,查询(包括按房间号,按房间类型,按客户姓名查询,同时还有输出所有空房信息),删除客房信息。酒店客房管理系统如图1所示。图2 主界面(2)分界面:客房信息查询设计分别实现按姓名,按房间号和按房间类型查询客房信息的功能,还可实现输出所有空房信息的功能。客房信息录入如图2所示。图3录入客房信息的分界面(4)分界面:客房信息的修改的设计提示根据编号寻找到客房并输出该客房内容,然后询问用户是否要修改客房信息,修改界面如图所示。图4 修改客房信息的分界面(5)分界面:客房信息的删除的设计提示根据编号寻找到客房并输出该客房内容,然后询问用户是否要删除客房信息,修改界面如图所示。图5 删除客房信息的分界面(6)分界面:剩余客房信息的查询的设计在保存完所修改或删除的客房信息,查询剩余的客房信息,可浏览所有空房信息。查询空房的信息界面如图6所示。图6 查询客房信息的分界面(7)分界面:所有信息的输出的设计在排序完后的所有客房中,输出所有客房的信息,以检验客房的经营情况。所有客房信息输出界面如图7所示。图7 所有客房的信息4.关键代码分析(1)系统的登录在主函数中,输出客房信息系统的各功能提示。选择需要执行功能的序号,由switch判断和选择所需要执行的功能。选择1:执行客房信息的录入;选择2:执行客人入住登记;选择3:执行教工客房信息的修改;选择4:执行客人退房结算;选择5:执行查询所有客房信息;选择6:执行查询;选择7:执行删除客房信息;选择8:退出系统;主函数:int main() HolterRoom Room200; /创立客房对象数组 int top;HolterRoom b;top=-1;fstream file(Room.txt,ios:in);while (1)file.read(char *)&b,sizeof(b);if (!file) break;top+;Roomtop=b;file.close(); /读取文件夹Room.txt中的数据while(1) coutnn 客房管理系统 nn;cout - nn;cout 1.客房信息的录入 nn;cout 2.客人入住登记 nn;cout 3.客房信息的修改 nn;cout 4.客人退房结算 nn;cout 5.查询所有客房信息 nn;cout 6.查询系统 nn;cout 7.删除客房信息 nn;cout 8.退 出 系 统 nn;coutchoose;system(cls);switch (choose) /用户的选择 case 1:set_HolterRoom_info(Room); break; /输入客房信息case 2:set_Customer_info(Room);break; /客人入住登记 case 3:Change_HolterRoom_info(Room); break; /修改客房信息case 4:SetCount(Room);break; /客户退房 case 5:PrintAll(Room); break; /查询所有客房信息 case 6:Find_choose(Room); break; /查询case 7:Delete_HolterRoom(Room);break; /删除客房信息 case 8:Write(Room);Save_HolterRoom_info(Room);Save_Customer_info(Room);exit(0); /退出 default : break; return 0;在读取数据时,能够从以有的文件中读取数据到程序中,避免了程序的重复输入数据,既实现了程序的多次可持续地使用,又有利于后面的信息修改、删除等功能。void Read(HolterRoom *Room) /读取数据库int top;HolterRoom b;top=-1;fstream file(Room.txt,ios:in); /创立一个输入文件流对象,读取文件夹Room.txt中的数据。while (1)file.read(char *)&b,sizeof(b);if (!file) break;top+;Roomtop=b; file.close();/关闭文件(2)信息的添加客房信息的录入,创立HolterRoom类和Room对象数组 ,调用构造函数,输入客房的房间编号、房间类型、定房日期、房间价格、房间内容及个人的入住有效期。 void set_HolterRoom_info(HolterRoom *Room)if(Room0.num=0)int size;cout暂无房间信息,请添加!endl;static int Number=700;coutsize;for(
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号