




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、程序代碼N:最終改進(jìn)版代碼(利用結(jié)構(gòu)體儲存多種類型的數(shù)據(jù))好處:比數(shù)組能儲存更多類型的數(shù)據(jù)!#include<iostream>#include<string>#include<cstdlib>/常用函數(shù)庫usingnamespacestd;/*在C+中struct和類的區(qū)別在于struct不能有方法,所有成員是public的*/structRoomintNumber;intPrice;intState;intdays;stringName;stringPhone;stringID;/room;可以在聲明struct的時候聲明一個struct實例Roomro
2、om80;class BookRoom/定義預(yù)定房間類private:stringcName;/顧客姓名intstayTime;/預(yù)定天數(shù)introomType;/房間類型(1.標(biāo)準(zhǔn)單人間2.大床房3.標(biāo)準(zhǔn)雙人間4.套房)stringphoneNum;/預(yù)留手機(jī)號public:voidsetData()stringname;inttime;inttype;stringnum;cout<<"您好,請輸入您的姓名:"<<endl;cin>>name;cName=name;cout<<"預(yù)定天數(shù)為:"<&l
3、t;endl;cin>>time;stayTime=time;cout<<"想要預(yù)定的房間類型:1.標(biāo)準(zhǔn)單人間100/天2.大床房200/天3.標(biāo)準(zhǔn)雙人間300/天4.套房400/天”<<endl;cin>>type;roomType=type;cout<<"預(yù)留手機(jī)號:"<<endl;cin>>num;phoneNum=num;voidBook()cout<<"正在預(yù)定."<<endl;switch(this->roomType)
4、case1:for(inti=0;i<20;i+)if(roomi.State=0)/房間無人占用且無人預(yù)定roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;cout<<"預(yù)定成功!房間號:"<<roomi.Number<<endl<<endl;roomi.State=1;break;/已被預(yù)訂elsecout<<roomi.Nu
5、mber<<"號房間已有人"<<endl;break;case2:for(inti=20;i<40;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;cout<<"預(yù)定成功!房間號:"<<roomi.Number<<endl<<endl;roomi.State
6、=1;break;elsecout<<roomi.Number<<"號房間已有人"<<endl;break;case3:for(inti=40;i<60;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;cout<<"預(yù)定成功!房間號:"<<roomi.Number<
7、;<endl<<endl;roomi.State=1;break;elsecout<<roomi.Number<<"號房間已有人"<<endl;break;case4:for(inti=60;i<80;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;cout<<"預(yù)定成功!
8、房間號:"<<roomi.Number<<endl<<endl;roomi.State=1;break;elsecout<<roomi.Number<<"號房間已有人"<<endl;break;default:cout<<"您輸入的房間類型有誤!"<<endl;classCheckIn/定義辦理入住類private:stringcName;stringcSex;stringidNum;/身份證號intcheck_inDate;/入住日期intstay
9、Time;introomType;stringphoneNum;public:voidunbooked()stringname;stringsex;stringidnum;intdate;inttime;inttype;stringnum;cout<<"客戶姓名:"<<endl;cin>>name;cName=name;cout<<"客戶性別:"<<endl;cin>>sex;cSex=sex;cout<<"客戶身份證號:"<<endl;c
10、in>>idnum;idNum=idnum;cout<<"入住日期:"<<endl;cin>>date;check_inDate=date;cout<<"占用天數(shù):"<<endl;cin>>time;stayTime=time;cout<<"房間類型:1.標(biāo)準(zhǔn)單人間100/天2.大床房200/天3.標(biāo)準(zhǔn)雙人間300/天4.套房400/天”<<endl;cin>>type;roomType=type;cout<<&q
11、uot;客戶手機(jī)號:"<<endl;cin>>num;phoneNum=num;switch(this->roomType)case1:for(inti=0;i<20;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;roomi.ID=this->idNum;cout<<"入住成功!房間號:"
12、<<roomi.Number<<endl<<endl;cout<<"請支付200元押金"<<endl<<endl;roomi.State=1;break;elsecout<<"抱歉,該房間類型沒有了"<<endl;break;case2:for(inti=20;i<40;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this-&
13、gt;phoneNum;roomi.Price*=this->stayTime;roomi.ID=this->idNum;cout<<"入住成功!房問號:"<<roomi.Number<<endl<<endl;cout<<”請支付400元押金"<<endl<<endl;roomi.State=1;break;elsecout<<"抱歉,該房間類型沒有了"<<endl;break;case3:for(inti=40;i<6
14、0;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;roomi.ID=this->idNum;cout<<"入住成功!房問號:"<<roomi.Number<<endl<<endl;cout<<”請支付600元押金"<<endl<<endl;roomi.S
15、tate=1;break;elsecout<<"抱歉,該房間類型沒有了"<<endl;break;case4:for(inti=60;i<80;i+)if(roomi.State=0)roomi.days=this->stayTime;roomi.Name=this->cName;roomi.Phone=this->phoneNum;roomi.Price*=this->stayTime;roomi.ID=this->idNum;cout<<"入住成功!房間號:"<<ro
16、omi.Number<<endl<<endl;cout<<"請支付800元押金"<<endl<<endl;roomi.State=1;break;elsecout<<"抱歉,該房間類型沒有了"<<endl;break;default:cout<<"您輸入的房間類型有誤!"<<endl;voidbooked()stringcompareItem;stringid_num;cout<<"請輸入您的姓名或者手機(jī)號
17、:"<<endl;cin>>compareItem;for(inti=0;i<80;i+)if(roomi.Name=compareItem|roomi.Phone=compareItem)cout<<"驗證成功!請支付:"<<(roomi.Price*2)<<"元押金"<<endl;cout<<"請登記客戶的身份證號:"<<endl;cin>>id_num;idNum=id_num;roomi.ID=idNum
18、;cout<<"房間號為:"<<roomi.Number<<endl<<"歡迎入住!"<<endl<<endl;break;classcheckOutprivate:stringname;intnumber;intdays;intprice;public:voidcheckout()intexpense;cout<<"請輸入房問號:"<<endl;cin>>number;cout<<"請輸入姓名:"
19、;<<endl;cin>>name;cout<<”請輸入實際住宿天數(shù):"<<endl;cin>>days;for(inti=0;i<80;i+)if(roomi.Name=name)&&(roomi.Number=number)expense=days*(roomi.Number/100*100);cout<<"房問號為"<<roomi.Number<<”的房間實際消費為"<<expense<<"元&qu
20、ot;<<endl;cout<<"押金為:"<<roomi.Price<<endl;if(expense>roomi.Price)cout<<"請補(bǔ)交"<<(expense-roomi.Price)<<"元"<<endl;elsecout<<"退回:"<<(roomi.Price-expense)<<"元"<<endl;break;elsecout
21、<<roomi.Number<<"號房不符合"<<endl;cout<<"房費核算清后請安任意鍵繼續(xù)"<<endl<<endl;system("pause");cout<<"感謝入住本酒店,歡迎下次光臨!"<<endl<<endl;);voidmenu()(cout<<"歡迎使用酒店管理系統(tǒng)!"<<endl;cout<<"請選擇:"&
22、lt;<endl;cout<<"1.預(yù)定房間"<<endl;cout<<"2.辦理入住"<<endl;cout<<"3.退房結(jié)賬"<<endl;cout<<"4.退出系統(tǒng)"<<endl;)voidinit()(intn=101;for(inti=0;i<20;i+)(roomi.Number=n+;roomi.Price=100;roomi.State=0;n=201;for(inti=20;i<40;
23、i+)(roomi.Number=n+;roomi.Price=200;roomi.State=0;n=301;for(inti=40;i<60;i+)(roomi.Number=n+;roomi.Price=300;roomi.State=0;n=401;for(inti=60;i<80;i+)(roomi.Number=n+;roomi.Price=400;roomi.State=0;intmain(void)init();intflag=1;while(flag)menu();intc;cin>>c;switch(c)case 1:BookRoom*a=newBo
24、okRoom;a->setData();a->Book();break;case 2:CheckIn*b=newCheckIn;cout<<"您有預(yù)定嗎?1.已預(yù)定2.未預(yù)定"<<endl;intc;cin>>c;switch(c)case 1:b->booked();break;case 2:b->unbooked();break;default:cout<<"輸入有誤!"<<endl;break;case 3:checkOut*c=newcheckOut;c->
25、checkout();break;case 4:cout<<"謝謝使用,再見!"<<endl;flag=0;break;default:cout<<"輸入有誤!"<<endl;return0;O:最初廢除版(利用數(shù)組)因為數(shù)組只能簡單的儲存一種類型的數(shù)據(jù),例如字符和數(shù)字。而酒店管理系統(tǒng)這種情境,一個房間要儲存多種數(shù)據(jù),例如客戶姓名、客戶性別、預(yù)訂房間號、客戶預(yù)留手機(jī)號、客戶占用天數(shù)、客戶身份證號以及押金和實際花銷等。因此我選用了結(jié)構(gòu)體來儲存。以下是Oldversion:#include<iostrea
26、m>#include<string>usingnamespacestd;introom_num420;/定義數(shù)組,共4個樓層,每個樓層20個房間,一層一類型classBookRoom/定義預(yù)定房間類private:stringcName;/顧客姓名intstayTime;/預(yù)定天數(shù)int roomType; /房間類型(1.標(biāo)準(zhǔn)單人間2.大床房3.標(biāo)準(zhǔn)雙人間4.套房)stringphoneNum;/預(yù)留手機(jī)號(也可使用longint)public:voidsetData()stringname;inttime;inttype;stringnum;cout<<&qu
27、ot;您好,請輸入您的姓名:"<<endl;cin>>name;cName=name;cout<<"預(yù)定天數(shù)為:"<<endl;cin>>time;stayTime=time;cout<<"想要預(yù)定的房間類型:1.標(biāo)準(zhǔn)單人間2.大床房3.標(biāo)準(zhǔn)雙人間4.套房“<<endl;cin>>type;roomType=type;cout<<"預(yù)留手機(jī)號:"<<endl;cin>>num;phoneNum=num;v
28、oidBook()cout<<"正在預(yù)定."<<endl;switch(this->roomType)case1:for(inti=0;i<20;i+)if(room_num1i=0)/房間無人占用且無人預(yù)定cout<<"預(yù)定成功!房問號:10"<<i+1<<endl;room_num1i=1;break;/已被預(yù)訂elsecout<<"該類型房間沒有了"<<endl;break;case2:for(inti=0;i<20;i+)if
29、(room_num2i=0)cout<<"預(yù)定成功!房問號:20"<<i+1<<endl;room_num2i=1;break;elsecout«"該類型房間沒有了"«endl;break;case3:for(inti=0;i<20;i+)(if(room_num3i=0)(coutvv”預(yù)定成功!房問號:30"«i+1«endl;room_num3i=1;break;)elsecout«"該類型房間沒有了"«endl;br
30、eak;case4:for(inti=0;i<20;i+)(if(room_num4i=0)(coutvv”預(yù)定成功!房問號:40"«i+1«endl;room_num4i=1;break;)elsecout«"該類型房間沒有了"«endl;break;default:cout<<"您輸入的房間類型有誤!"<<endl;classCheckin/定義辦理入住類private:stringcName;stringcSex;stringcId;/身份證號stringphoneNu
31、m;intcheck_inDate;/入住時間intstayTime;intRoom_num;public:voidsetData()stringname;stringsex;stringid;stringnum;intdate;inttime;introom_num;cout«"客戶姓名:"«endl;cin»name;cName=name;coutvv”性另(J:"«endl;cin»sex;cSex=sex;cout«"身份證號:"«endl;cin»id;cld=id;cout«"手機(jī)號:"«endl;cin»num;phoneNum=num;cout«"登記入住時間:"«endl;cin»date;check_inDate=date;cout«"入住天數(shù):"«endl;cin»time;stayTime=time;cout«"房間號:"«endl;cin»room_num;Room_num=room_num;);void
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 退休歡送會致辭(28篇)
- 合同詐騙罪申訴狀
- DB31∕T 588-2012 保護(hù)地黃瓜病害測報技術(shù)規(guī)范 第2部分:黃瓜白粉病
- 2025年建筑施工利器:柱平法施工圖制作
- 商業(yè)街招商知識培訓(xùn)課件
- 如何做好基層人力資源和社會保障事務(wù)所公共就業(yè)-三明市勞動保障網(wǎng)
- 人力資源管理師培訓(xùn)課程-基礎(chǔ)知識
- 2024年青海省西寧市九年級中考一模道德與法治·歷史試卷-初中歷史(解析版)
- 語文修辭學(xué)之比喻、擬人解析教案
- 2025年安康貨運(yùn)從業(yè)資格證考試模擬考試題庫下載
- 2025年湖南工業(yè)職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫審定版
- 人教版高一下英語單詞表
- 如何做好實習(xí)生帶教
- 2025年中國游戲行業(yè)市場深度分析及發(fā)展前景預(yù)測報告
- 專項訓(xùn)練:電磁感應(yīng)中的電路、電荷量及圖像問題(10大題型)(原卷版)
- 汽車電腦故障解碼器項目可行性研究報告評審方案設(shè)計2025年發(fā)改委標(biāo)準(zhǔn)
- 國家文化安全教育課件
- 2025年春新滬粵版物理八年級下冊課件 7.2 運(yùn)動的快慢 速度
- 2025年人工智能技術(shù)研發(fā)與應(yīng)用合作協(xié)議9篇
- DG-T 110-2024 茶樹修剪機(jī)標(biāo)準(zhǔn)
- 2025年慢性阻塞性肺疾病全球創(chuàng)議GOLD指南修訂解讀課件
評論
0/150
提交評論