2022年C++版酒店管理程序代码教学教材.pdf

上传人:C****o 文档编号:12783528 上传时间:2022-04-26 格式:PDF 页数:19 大小:94.33KB
返回 下载 相关 举报
2022年C++版酒店管理程序代码教学教材.pdf_第1页
第1页 / 共19页
2022年C++版酒店管理程序代码教学教材.pdf_第2页
第2页 / 共19页
点击查看更多>>
资源描述

《2022年C++版酒店管理程序代码教学教材.pdf》由会员分享,可在线阅读,更多相关《2022年C++版酒店管理程序代码教学教材.pdf(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、C+版 酒 店 管 理 程 序代 码精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 19 页 - - - - - - - - - - 程序代码N:最终改进版代码(利用结构体储存多种类型的数据)好处:比数组能储存更多类型的数据!#include #include #include / 常用函数库using namespace std; /*在 c+中 struct 和类的区别在于struct 不能有方法,所有成员是public 的*/ struct Room int Number; int Pr

2、ice; int State; int days; string Name; string Phone; string ID; ;/room; 可以在声明 struct 的时候声明一个 struct 实例Room room80; class BookRoom /定义预定房间类 private: string cName; / 顾客姓名int stayTime; / 预定天数int roomType; / 房间类型( 1.标准单人间 2.大床房 3.标准双人间 4. 套房)string phoneNum; / 预留手机号精品资料 - - - 欢迎下载 - - - - - - - - - - -

3、欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 19 页 - - - - - - - - - - public: void setData() string name; int time; int type; string num; cout 您好,请输入您的姓名:name; cName=name; cout 预定天数为: time; stayTime=time; cout 想要预定的房间类型: 1.标准单人间 100/天 2.大床房 200/天 3.标准双人间 300/天 4.套房 400/天type; roomType=type; cout 预留手机号: num;

4、 phoneNum=num; ; void Book() cout 正在预定 .roomType) case 1:for(int i=0;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; cout 预定成功!房间号:roomi.Numberendlendl; roomi.State=1;break; / 已被预订 else coutroomi.Number号房间已有人 endl;break; 精品资料 - - - 欢迎下载 - - - - - - - - - - -

5、欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 19 页 - - - - - - - - - - case 2:for(int i=20;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; cout 预定成功!房间号:roomi.Numberendlendl; roomi.State=1; break; else coutroomi.Number号房间已有人 endl; break; case 3:for(int i=40;istayTime;

6、 roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; cout 预定成功!房间号:roomi.Numberendlendl; roomi.State=1; break; else coutroomi.Number号房间已有人 endl;break; case 4:for(int i=60;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; cout 预定成功!房间号:

7、roomi.Numberendlendl; roomi.State=1; break; else coutroomi.Number号房间已有人endl; break; default:cout 您输入的房间类型有误! endl; ; ; class CheckIn /定义办理入住类 private: string cName; string cSex; string idNum; / 身份证号int check_inDate; / 入住日期 int stayTime; int roomType; string phoneNum; public: void unbooked() string n

8、ame; string sex; string idnum; int date; int time; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 19 页 - - - - - - - - - - int type; string num; cout 客户姓名: name; cName=name; cout 客户性别: sex; cSex=sex; cout 客户身份证号: idnum; idNum=idnum; cout 入住日期: date; check_inDate=date; cou

9、t 占用天数: time;stayTime=time; cout 房间类型: 1.标准单人间 100/天 2.大床房 200/天 3.标准双人间 300/天 4.套房 400/天type;roomType=type; cout 客户手机号: num; phoneNum=num; switch(this-roomType) case 1:for(int i=0;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; roomi.ID=this-idNum; cout 入住成功

10、!房间号:roomi.Numberendlendl; cout 请支付 200元押金 endlendl; roomi.State=1; break; else cout抱歉,该房间类型没有了 endl; break; case 2:for(int i=20;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 19 页 - - - - - - - - - - roomi.Pric

11、e*=this-stayTime; roomi.ID=this-idNum; cout 入住成功!房间号:roomi.Numberendlendl; cout 请支付 400元押金 endlendl; roomi.State=1; break; else cout抱歉,该房间类型没有了 endl; break; case 3:for(int i=40;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; roomi.ID=this-idNum; cout 入住成功!房间号

12、:roomi.Numberendlendl; cout 请支付 600元押金 endlendl; roomi.State=1; break; else cout抱歉,该房间类型没有了 endl; break; case 4:for(int i=60;istayTime; roomi.Name=this-cName; roomi.Phone=this-phoneNum; roomi.Price*=this-stayTime; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 19 页 - - -

13、- - - - - - - roomi.ID=this-idNum; cout 入住成功!房间号:roomi.Numberendlendl; cout 请支付 800元押金 endlendl; roomi.State=1; break; else cout抱歉,该房间类型没有了 endl; break; default:cout 您输入的房间类型有误! endl; void booked() string compareItem; string id_num; cout 请输入您的姓名或者手机号:compareItem; for(int i=0;i80;i+) if(roomi.Name=co

14、mpareItem|roomi.Phone=compareItem) cout 验证成功!请支付:(roomi.Price*2)元押金 endl; cout 请登记客户的身份证号:id_num;idNum=id_num;roomi.ID=idNum; cout 房间号为: roomi.Numberendl欢迎入住! endlendl; break; ; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 19 页 - - - - - - - - - - class checkOut private

15、: string name; int number; int days; int price; public: void checkout() int expense; cout 请输入房间号: number; cout 请输入姓名: name; cout 请输入实际住宿天数: days; for(int i=0;i80;i+) if(roomi.Name=name) & (roomi.Number=number) expense=days*(roomi.Number/100*100); cout 房间号为 roomi.Number的房间实际消费为 expense 元endl; cout 押金

16、为: roomi.Priceroomi.Price) cout请补交(expense-roomi.Price)元endl; else cout退回: (roomi.Price-expense)元endl; break; else coutroomi.Number号房不符合 endl; cout 房费核算清后请安任意键继续endlendl; system(pause); cout 感谢入住本酒店,欢迎下次光临!endlendl; ; void menu() cout 欢迎使用酒店管理系统! endl; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳

17、 - - - - - - - - - -第 9 页,共 19 页 - - - - - - - - - - cout 请选择: endl; cout1. 预定房间 endl; cout2. 办理入住 endl; cout3. 退房结账 endl; cout4. 退出系统 endl; void init() int n=101; for(int i=0;i20;i+) roomi.Number=n+; roomi.Price=100; roomi.State=0; n=201; for(int i=20;i40;i+) roomi.Number=n+; roomi.Price=200; roomi

18、.State=0; n=301; for(int i=40;i60;i+) roomi.Number=n+; roomi.Price=300; roomi.State=0; n=401; for(int i=60;ic; switch(c) case 1: BookRoom*a=new BookRoom; a-setData(); a-Book(); break; case 2: CheckIn*b=new CheckIn; cout 您有预定吗? 1.已预定 2.未预定c; switch(c) case 1: b-booked(); break; 精品资料 - - - 欢迎下载 - - -

19、- - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 19 页 - - - - - - - - - - case 2: b-unbooked(); break; default:cout 输入有误! checkout(); break; case 4: cout 谢谢使用,再见! endl; flag=0; break; default:cout 输入有误! endl; return 0; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共

20、19 页 - - - - - - - - - - O:最初废除版(利用数组)因为数组只能简单的储存一种类型的数据,例如字符和数字。而酒店管理系统这种情境,一个房间要储存多种数据,例如客户姓名、客户性别、预订房间号、客户预留手机号、客户占用天数、客户身份证号以及押金和实际花销等。因此我选用了结构体来储存。以下是 Old version: #include #include using namespace std; int room_num420; / 定义数组,共 4 个楼层,每个楼层20 个房间,一层一类型class BookRoom /定义预定房间类 private: string cNam

21、e; / 顾客姓名精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 19 页 - - - - - - - - - - int stayTime; / 预定天数int roomType; / 房间类型( 1.标准单人间 2.大床房 3.标准双人间 4. 套房)string phoneNum; / 预留手机号 (也可使用 longint) public: void setData() string name; int time; int type; string num; cout 您好,请输入您

22、的姓名:name; cName=name; cout 预定天数为: time; stayTime=time; cout 想要预定的房间类型: 1.标准单人间 2.大床房 3.标准双人间 4. 套房type; roomType=type; cout 预留手机号: num; phoneNum=num; ; void Book() cout 正在预定 .roomType) case 1:for(int i=0;i20;i+) if (room_num1i=0) /房间无人占用且无人预定 cout 预定成功!房间号:10i+1endl; room_num1i=1;break; /已被预订 else c

23、out该类型房间没有了 endl; break; case 2:for(int i=0;i20;i+) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 14 页,共 19 页 - - - - - - - - - - if(room_num2i=0) cout 预定成功!房间号: 20i+1endl; room_num2i=1; break; else cout该类型房间没有了 endl; break; case 3:for(int i=0;i20;i+) if(room_num3i=0) cout 预定成

24、功!房间号:30i+1endl; room_num3i=1; break; else cout该类型房间没有了 endl; break; case 4:for(int i=0;i20;i+) if(room_num4i=0) cout 预定成功!房间号:40i+1endl; room_num4i=1; break; else cout该类型房间没有了 endl; break; default:cout 您输入的房间类型有误! endl; ; ; class Checkin /定义办理入住类 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - -

25、- - - - - - - -第 15 页,共 19 页 - - - - - - - - - - private: string cName; string cSex; string cId; / 身份证号string phoneNum; int check_inDate; / 入住时间int stayTime; int Room_num; public: void setData() string name; string sex; string id; string num; int date; int time; int room_num; cout 客户姓名: name;cName=n

26、ame; cout 性别: sex;cSex=sex; cout 身份证号: id;cId=id; cout 手机号: num;phoneNum=num; cout 登记入住时间: date;check_inDate=date; cout 入住天数: time;stayTime=time; cout 房间号:room_num;Room_num=room_num; ; void Check() cout 正在办理 .endl; switch(Room_num/100) case 1: cout 办理成功!共计消费:100*stayTimeendl; 精品资料 - - - 欢迎下载 - - - -

27、 - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 19 页 - - - - - - - - - - break; case 2: cout 办理成功!共计消费:200*stayTimeendl; break; case 3: cout 办理成功!共计消费:300*stayTimeendl; break; case 4: cout 办理成功!共计消费:400*stayTimeendl; break; default:cout 输入错误! endl; ; ; void menu() cout 欢迎使用酒店管理系统! endl; cout 请选

28、择: endl; cout1. 预定房间 endl; cout2. 办理入住 endl; cout3. 退房结账 endl; cout4. 退出系统 endl; int main(void) for(int i=0;i4;i+) for(int j=0;jc; switch(c) case 1: BookRoom*a=new BookRoom; a-setData(); a-Book(); break; case 2: Checkin*b=new Checkin; b-setData(); b-Check(); break; /case3 to do case 4: cout 谢谢使用,再见! endl; flag=0; break; default:cout 输入有误! endl; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 18 页,共 19 页 - - - - - - - - - - return 0; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 19 页,共 19 页 - - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁