


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、程序代码N:最终改进版代码(利用结构体储存多种类型的数据)好处:比数组能储存更多类型的数据!#include#include#include常用函数库usingnamespacestd;/*在c+中struct和类的区别在于struct不能有方法,所有成员是public的*/structRoomintNumber;intPrice;intState;intdays;stringName;stringPhone;stringID;/room;可以在声明struct的时候声明一个struct实例Roomroom80;classBookRoom定义预定房间类(private:stringcName;
2、顾客姓名intstayTime;预定天数introomType;房间类型(1.标准单人问2.大床房3.标准双人问4.套房)stringphoneNum;/预留手机号public:voidsetData()(stringname;inttime;inttype;stringnum;cout”您好,请输入您的姓名:name;cName=name;cout”预定天数为:time;stayTime=time;cout想要预定的房间类型:1.标准单人问100/天2.大床房200/天3.标准双人问300/天4.套房400/天”type;roomType=type;cout预留手机号:num;phoneNu
3、m=num;voidBook()(cout正在预定.roomType)(case1:for(inti=0;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;cout预定成功!房间号:roomi.Numberendlendl;roomi.State=1;break;已被预订elsecoutroomi.Number号房间已有人endl;break;case2:for(inti=20;istayTime;roomi.Name=this-cName;roomi.Phone=this-
4、phoneNum;roomi.Price*=this-stayTime;cout预定成功!房间号:roomi.Numberendlendl;roomi.State=1;break;elsecoutroomi.Number号房间已有人endl;break;case3:for(inti=40;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;cout预定成功!房间号:roomi.Numberendlendl;roomi.State=1;break;elsecoutroomi.Nu
5、mber号房间已有人endl;break;case4:for(inti=60;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;cout预定成功!房间号:roomi.Numberendlendl;roomi.State=1;break;elsecoutroomi.Number号房间已有人endl;break;default:cout您输入的房间类型有误!endl;classCheckIn定义办理入住类(private:stringcName;stringcSex;string
6、idNum;身份证号intcheck_inDate;入住日期intstayTime;introomType;stringphoneNum;public:voidunbooked()stringname;stringsex;stringidnum;intdate;inttime;inttype;stringnum;cout客户姓名:name;cName=name;cout客户性别:sex;cSex=sex;cout客户身份证号:idnum;idNum=idnum;cout入住日期:date;check_inDate=date;cout占用天数:time;stayTime=time;cout房间类
7、型:1.标准单人问100/天2.大床房200/天3.标准双人问300/天4.套房400/天type;roomType=type;cout客户手机号:num;phoneNum=num;switch(this-roomType)(case1:for(inti=0;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout入住成功!房间号:roomi.Numberendlendl;cout请支付200元押金endlendl;roomi.Sta
8、te=1;break;elsecout抱歉,该房间类型没有了endl;break;case2:for(inti=20;istayTime;roomi.Name=this-cName;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout入住成功!房间号:roomi.Numberendlendl;cout请支付400元押金endlendl;roomi.State=1;break;elsecout抱歉,该房间类型没有了endl;break;case3:for(inti=40;istayTime;roomi.Name=this-cName;roomi.
9、Phone=this-phoneNum;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout入住成功!房间号:roomi.Numberendlendl;cout请支付600元押金endlendl;roomi.State=1;break;elsecout抱歉,该房间类型没有了endl;break;case4:for(inti=60;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout
10、入住成功!房间号:roomi.Numberendlendl;cout请支付800元押金endlendl;roomi.State=1;break;elsecout抱歉,该房间类型没有了endl;break;default:cout您输入的房间类型有误!endl;voidbooked()stringcompareitem;stringid_num;cout请输入您的姓名或者手机号:compareitem;for(inti=0;i80;i+)(if(roomi.Name=compareitem|roomi.Phone=compareitem)(cout验证成功!请支付:(roomi.Price*2)
11、元押金endl;cout请登记客户的身份证号:id_num;idNum=id_num;roomi.iD=idNum;cout房间号为:roomi.Numberendl欢迎入住!endlendl;break;classcheckOut(private:stringname;intnumber;intdays;intprice;public:voidcheckout()(intexpense;cout请输入房间号:number;cout请输入姓名:name;cout请输入实际住宿天数:days;for(inti=0;i80;i+)if(roomi.Name=name)&(roomi.Number=
12、number)expense=days*(roomi.Number/100*100);cout房间号为roomi.Number”的房间实际消费为expense元endl;cout押金为:roomi.Priceroomi.Price)cout请补交(expense-roomi.Price)元endl;elsecout退回:(roomi.Price-expense)元endl;break;elsecoutroomi.Number”号房不符合endl;cout房费核算活后请安任意键继续endlendl;system(pause);cout感谢入住本洒店,欢迎下次光临!endlendl;voidmen
13、u()cout欢迎使用洒店管理系统!endl;cout请选择:endl;cout1.预定房间endl;cout2.办理入住endl;cout3.退房结账endl;cout4.退出系统endl;voidinit()intn=101:for(inti=0;i20;i+)roomi.Number=n+;roomi.Price=100;roomi.State=0;)n=201;roomi.Number=n+;roomi.Price=200;roomi.State=0;n=301;for(inti=40;i60;i+)(roomi.Number=n+;roomi.Price=300;roomi.Stat
14、e=0;n=401;for(inti=60;ic;switch(c)(case1:(BookRoom*a=newBookRoom;a-setData();a-Book();break;case2:(CheckIn*b=newCheckIn;cout您有预定吗?1.已预定2.未预定”c;switch(c)(case1:(b-booked();break;case2:(b-unbooked();break;default:cout”输入有误!checkout();break;case4:cout谢谢使用,再见!endl;flag=0;break;default:cout输入有误!endl;retu
15、rn0;O:最初废除版(利用数组)因为数组只能简单的储存一种类型的数据,例如字符和数字。而洒店管理系统这种情境,一个房间要储存多种数据,例如客户姓名、客户性别、预订房间号、客户预留手机号、客户占用天数、客户身份证号以及押金和实际花销等。因此我选用了结构体来储存。以下是Oldversion:#include#includeusingnamespacestd;introom_num420;定义数组,共4个楼层,每个楼层20个房间,一层一类classBookRoom(private:定义预定房间类stringcName;顾客姓名intstayTime;预定天数introomType;房间类型(1.标
16、准单人问2.大床房3.标准双人问4.套房)stringphoneNum;/预留手机号(也可使用longint)public:voidsetData()(stringname;inttime;inttype;stringnum;cout”您好,请输入您的姓名:name;cName=name;cout”预定天数为:time;stayTime=time;cout想要预定的房间类型:1.标准单人问2.大床房3.标准双人问4.套房type;roomType=type;cout预留手机号:num;phoneNum=num;voidBook()cout正在预定.vvendl;switch(this-room
17、Type)case1:for(inti=0;i20;i+)if(room_num1i=0)房间无人占用且无人预定(cout预定成功!房间号:10i+1endl;room_num1i=1;break;已被预订elsecout该类型房间没有了endl;)break;case2:for(inti=0;i20;i+)if(room_num2i=0)cout预定成功!房间号:20i+1endl;room_num2i=1;break;)elsecout该类型房间没有了endl;break;case3:for(inti=0;i20;i+)(if(room_num3i=0)(cout预定成功!房间号:30”i
18、+1endl;room_num3i=1;break;elsecout该类型房间没有了endl;break;case4:for(inti=0;i20;i+)(if(room_num4i=0)(cout预定成功!房间号:40i+1endl;room_num4i=1;break;elsecout该类型房间没有了endl;break;default:cout您输入的房间类型有误!endl;classCheckin定义办理入住类(private:stringcName;stringcSex;stringcId;身份证号stringphoneNum;intcheck_inDate;/入住时间intstay
19、Time;intRoom_num;public:voidsetData()(stringname;stringsex;stringid;stringnum;intdate;inttime;introom_num;cout客户姓名:endl;cinname;cName=name;cout性别:endl;cinsex;cSex=sex;cout身份证号:endl;cinid;cld=id;cout手机号:endl;cinnum;phoneNum=num;cout登记入住时间:endl;cindate;check_inDate=date;cout入住天数:endl;cintime;stayTime=time;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 27534.1-2025畜禽遗传资源调查技术规范第1部分:总则
- 2025年医院临床执业医师职业定期考核技能资格知识考试题与答案
- 2025年中考历史总复习初中历史必考110个重点知识填空汇编
- 培训机构教师活动实施框架
- 护理安全输血培训
- 医院职业防范培训内容
- 路缘机械租赁合同协议
- 避雷装置安装合同协议
- 景区车辆协议书
- 牦牛交易协议书
- 访问学者 申请书
- 2025年杭州市萧山区国有企业招聘笔试参考题库含答案解析
- 2024年校园食品安全检测服务协议3篇
- 志愿者年度述职报告
- 【MOOC】犯罪心理学-西南政法大学 中国大学慕课MOOC答案
- 中国融通集团笔试题库
- 乳酸性酸中毒护理
- 《尊师重道主题班会》课件
- GB/T 42151.3-2024电力自动化通信网络和系统第3部分:通用要求
- 室内装修合同范本之家装
- 在线教育课程资源共享平台建设合同
评论
0/150
提交评论