




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.程序代碼N:最終改進(jìn)版代碼(利用結(jié)構(gòu)體儲(chǔ)存多種類(lèi)型的數(shù)據(jù))好處:比數(shù)組能儲(chǔ)存更多類(lèi)型的數(shù)據(jù)!#include#include#include /常用函數(shù)庫(kù) using namespace std;/*在c+中struct和類(lèi)的區(qū)別在于struct不能有方法,所有成員是public的*/struct Roomint Number;int Price;int State;int days;string Name;string Phone;string ID;/room; 可以在聲明struct的時(shí)候聲明一個(gè)struct實(shí)例Room room80;class BookRoom /定義預(yù)定房間類(lèi) p
2、rivate:string cName; /顧客姓名int stayTime; /預(yù)定天數(shù)int roomType; /房間類(lèi)型(1.標(biāo)準(zhǔn)單人間 2.大床房 3.標(biāo)準(zhǔn)雙人間 4. 套房)string phoneNum; / 預(yù)留手機(jī)號(hào)public: void setData() string name; int time; int type; string num; cout您好,請(qǐng)輸入您的姓名:name; cName=name;cout預(yù)定天數(shù)為:time; stayTime=time;cout想要預(yù)定的房間類(lèi)型:1.標(biāo)準(zhǔn)單人間 100/天 2.大床房 200/天 3.標(biāo)準(zhǔn)雙人間 300/天
3、 4.套房400/天type; roomType=type;cout預(yù)留手機(jī)號(hào):num; phoneNum=num;void Book()cout正在預(yù)定.roomType)case 1:for(int i=0;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;cout預(yù)定成功!房間號(hào):roomi.Numberendlendl;roomi.State=1;break; /已被預(yù)訂 else coutroomi.Number號(hào)房間已有人endl;break;case 2:for
4、(int i=20;istayTime; roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime; cout預(yù)定成功!房間號(hào):roomi.Numberendlendl;roomi.State=1; break; else coutroomi.Number號(hào)房間已有人endl;break;case 3:for(int i=40;istayTime; roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime; co
5、ut預(yù)定成功!房間號(hào):roomi.Numberendlendl;roomi.State=1; break; else coutroomi.Number號(hào)房間已有人endl;break;case 4:for(int i=60;istayTime; roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime; cout預(yù)定成功!房間號(hào):roomi.Numberendlendl;roomi.State=1; break;else coutroomi.Number號(hào)房間已有人endl;break;default:
6、cout您輸入的房間類(lèi)型有誤!endl; ;class CheckIn /定義辦理入住類(lèi)private:string cName;string cSex;string idNum; /身份證號(hào) int check_inDate; /入住日期 int stayTime; int roomType; string phoneNum;public:void unbooked()string name;string sex;string idnum;int date;int time;int type;string num;cout客戶(hù)姓名:name; cName=name;cout客戶(hù)性別:sex;
7、 cSex=sex; cout客戶(hù)身份證號(hào):idnum; idNum=idnum;cout入住日期:date; check_inDate=date;cout占用天數(shù):time;stayTime=time;cout房間類(lèi)型:1.標(biāo)準(zhǔn)單人間 100/天 2.大床房 200/天 3.標(biāo)準(zhǔn)雙人間 300/天 4.套房 400/天type;roomType=type;cout客戶(hù)手機(jī)號(hào):num; phoneNum=num;switch(this-roomType)case 1:for(int i=0;istayTime;roomi.Name=this-cName;roomi.Phone=this-pho
8、neNum;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout入住成功!房間號(hào):roomi.Numberendlendl;cout請(qǐng)支付200元押金endlendl;roomi.State=1;break; else cout抱歉,該房間類(lèi)型沒(méi)有了endl;break;case 2:for(int i=20;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout入住成功!房間號(hào):r
9、oomi.Numberendlendl;cout請(qǐng)支付400元押金endlendl;roomi.State=1;break; else cout抱歉,該房間類(lèi)型沒(méi)有了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入住成功!房間號(hào):roomi.Numberendlendl;cout請(qǐng)支付600元押金endlendl;roomi.State=1;break; else
10、 cout抱歉,該房間類(lèi)型沒(méi)有了endl;break;case 4:for(int i=60;istayTime;roomi.Name=this-cName;roomi.Phone=this-phoneNum;roomi.Price*=this-stayTime;roomi.ID=this-idNum;cout入住成功!房間號(hào):roomi.Numberendlendl;cout請(qǐng)支付800元押金endlendl;roomi.State=1;break; else cout抱歉,該房間類(lèi)型沒(méi)有了endl;break;default:cout您輸入的房間類(lèi)型有誤!endl; void booked
11、()string compareItem;string id_num;cout請(qǐng)輸入您的姓名或者手機(jī)號(hào):compareItem;for(int i=0;i80;i+)if(roomi.Name=compareItem|roomi.Phone=compareItem)cout驗(yàn)證成功!請(qǐng)支付:(roomi.Price*2)元押金endl;cout請(qǐng)登記客戶(hù)的身份證號(hào):id_num;idNum=id_num;roomi.ID=idNum;cout房間號(hào)為: roomi.Numberendl歡迎入??!endlendl;break; ;class checkOutprivate:string name
12、;int number;int days;int price;public:void checkout()int expense;cout請(qǐng)輸入房間號(hào):number;cout請(qǐng)輸入姓名:name;cout請(qǐng)輸入實(shí)際住宿天數(shù):days; for(int i=0;i80;i+)if(roomi.Name=name) & (roomi.Number=number)expense=days*(roomi.Number/100*100);cout房間號(hào)為roomi.Number的房間實(shí)際消費(fèi)為expense元endl;cout押金為:roomi.Priceroomi.Price) cout請(qǐng)補(bǔ)交(exp
13、ense-roomi.Price)元endl;else cout退回:(roomi.Price-expense)元endl; break;else coutroomi.Number號(hào)房不符合endl;cout房費(fèi)核算清后請(qǐng)安任意鍵繼續(xù)endlendl; system(pause);cout感謝入住本酒店,歡迎下次光臨!endlendl;void menu()cout歡迎使用酒店管理系統(tǒng)!endl;cout請(qǐng)選擇:endl;cout1.預(yù)定房間endl;cout2.辦理入住endl;cout3.退房結(jié)賬endl;cout4.退出系統(tǒng)endl; void init()int n=101;for(i
14、nt 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.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;
15、 case 2: CheckIn*b=new CheckIn; cout您有預(yù)定嗎? 1.已預(yù)定 2.未預(yù)定c; switch(c) case 1: b-booked(); break;case 2:b-unbooked();break;default:cout輸入有誤!checkout(); break;case 4: cout謝謝使用,再見(jiàn)!endl; flag=0; break; default:cout輸入有誤!endl; return 0; O:最初廢除版(利用數(shù)組)因?yàn)閿?shù)組只能簡(jiǎn)單的儲(chǔ)存一種類(lèi)型的數(shù)據(jù),例如字符和數(shù)字。而酒店管理系統(tǒng)這種情境,一個(gè)房間要儲(chǔ)存多種數(shù)據(jù),例如客戶(hù)姓名、客
16、戶(hù)性別、預(yù)訂房間號(hào)、客戶(hù)預(yù)留手機(jī)號(hào)、客戶(hù)占用天數(shù)、客戶(hù)身份證號(hào)以及押金和實(shí)際花銷(xiāo)等。因此我選用了結(jié)構(gòu)體來(lái)儲(chǔ)存。以下是Old version:#include#includeusing namespace std;int room_num420; /定義數(shù)組,共4個(gè)樓層,每個(gè)樓層20個(gè)房間,一層一類(lèi)型class BookRoom /定義預(yù)定房間類(lèi) private:string cName; /顧客姓名int stayTime; /預(yù)定天數(shù)int roomType; /房間類(lèi)型(1.標(biāo)準(zhǔn)單人間 2.大床房 3.標(biāo)準(zhǔn)雙人間 4. 套房)string phoneNum; / 預(yù)留手機(jī)號(hào)(也可使用lon
17、gint) public: void setData() string name; int time; int type; string num; cout您好,請(qǐng)輸入您的姓名:name; cName=name;cout預(yù)定天數(shù)為:time; stayTime=time;cout想要預(yù)定的房間類(lèi)型:1.標(biāo)準(zhǔn)單人間 2.大床房 3.標(biāo)準(zhǔn)雙人間 4. 套房type; roomType=type;cout預(yù)留手機(jī)號(hào):num; phoneNum=num;void Book()cout正在預(yù)定.roomType)case 1:for(int i=0;i20;i+)if (room_num1i=0) /房
18、間無(wú)人占用且無(wú)人預(yù)定 cout預(yù)定成功!房間號(hào):10i+1endl;room_num1i=1;break; /已被預(yù)訂 else cout該類(lèi)型房間沒(méi)有了endl; break;case 2:for(int i=0;i20;i+) if(room_num2i=0) cout預(yù)定成功!房間號(hào):20i+1endl;room_num2i=1; break;else cout該類(lèi)型房間沒(méi)有了endl; break;case 3:for(int i=0;i20;i+)if(room_num3i=0) cout預(yù)定成功!房間號(hào):30i+1endl;room_num3i=1; break;else cout
19、該類(lèi)型房間沒(méi)有了endl; break;case 4:for(int i=0;i20;i+)if(room_num4i=0) cout預(yù)定成功!房間號(hào):40i+1endl;room_num4i=1; break;else cout該類(lèi)型房間沒(méi)有了endl; break;default:cout您輸入的房間類(lèi)型有誤!endl; ;class Checkin /定義辦理入住類(lèi)private:string cName;string cSex;string cId; /身份證號(hào) string phoneNum;int check_inDate; /入住時(shí)間 int stayTime;int Room_num;public:void setData()string name;string sex;string id;string num;int date;int time;int room_num;cout客戶(hù)姓名:name;cName=name;cout性別:sex;cSex=sex;cout身份證號(hào):id;cId=id;cout手機(jī)號(hào):num;phoneNum=num;cout登記入住時(shí)間:date;check_inDate=date;cout入住天數(shù):time;stayTime=time
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 生產(chǎn)計(jì)劃第1章
- 市場(chǎng)營(yíng)銷(xiāo)計(jì)劃組織與審計(jì)
- 2025年黑龍江貨運(yùn)叢業(yè)資格證考試題庫(kù)答案
- 2025年金昌貨運(yùn)資格證模擬考試題庫(kù)
- 2025年松原貨運(yùn)從業(yè)資格證考試卷
- 第2課+中華文化的世界意義高二下學(xué)期歷史統(tǒng)編版(2019)選擇性必修3
- 重慶市部分區(qū)2024-2025學(xué)年高二(上)期末物理試卷【含解析】
- 四川省達(dá)州市2023-2024學(xué)年高一(上)期末物理試卷【含解析】
- 小升初統(tǒng)編版語(yǔ)文銜接課程:《從感知比喻到運(yùn)用比喻》教學(xué)設(shè)計(jì)001
- 智能手機(jī)用戶(hù)位置隱私保護(hù)
- 2024年四川省成都市青羊區(qū)中考數(shù)學(xué)二診試卷(含答案)
- 小品劇本《鍘美案》臺(tái)詞完整版遼寧民間藝術(shù)團(tuán)宋小寶
- 2024年湖南有色金屬職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)完美版含答案解析
- 運(yùn)輸車(chē)輛安全培訓(xùn)試題及答案
- 辦公設(shè)備(電腦、一體機(jī)、投影機(jī)等)采購(gòu) 投標(biāo)方案(技術(shù)方案)
- 小班兒歌《迎春花》課件
- 老舊住宅小區(qū)加裝電梯施工組織方案
- 查干淖爾一號(hào)井環(huán)評(píng)
- 2021年安徽省公務(wù)員錄用考試《行測(cè)》真題及答案
- 光伏車(chē)棚設(shè)計(jì)方案
- 大學(xué)生春季心理健康教育
評(píng)論
0/150
提交評(píng)論