




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上面向?qū)ο蟪绦蛟O(shè)計(jì)(C+)大作業(yè)項(xiàng)目名稱(chēng): 酒店管理系統(tǒng) 班 級(jí): 姓名學(xué)號(hào): 完成時(shí)間: 2015年1月15日 指導(dǎo)教師: 日期:2016年1月15日專(zhuān)心-專(zhuān)注-專(zhuān)業(yè)目錄一、 系統(tǒng)說(shuō)明1 1.1 問(wèn)題描述.1 1.2 總體方案.1二、 程序分析2 2.1 流程圖.2 2.2 詳細(xì)說(shuō)明.4 2.2.1主系統(tǒng)說(shuō)明4 2.2.2 子系統(tǒng)說(shuō)明.13三、 測(cè)試結(jié)果.16 3.1 測(cè)試結(jié)果16 3.2 測(cè)試總結(jié)20四、 總結(jié).21附錄一:參考文獻(xiàn).22附錄二:程序源代碼23 一、 系統(tǒng)說(shuō)明1.1問(wèn)題描述。酒店住宿情境Kate是單位的業(yè)務(wù)員,經(jīng)常需要到外面出差,這次,他選擇了A城市
2、一個(gè)“好運(yùn)來(lái)”酒店,準(zhǔn)備住下。如是他走到酒店前臺(tái),問(wèn)了一下房間的情況,服務(wù)員問(wèn)他有沒(méi)有預(yù)定,他說(shuō)沒(méi)有。于是,服務(wù)員幫他開(kāi)了間標(biāo)間,登記了他的個(gè)人信息,并且告訴他如果需要什么服務(wù)可以直接打前臺(tái)電話。Kate很滿(mǎn)意,對(duì)這種服務(wù)大加贊賞。對(duì)于本次設(shè)計(jì)我們主要實(shí)現(xiàn)的功能有:客房信息的錄入set_HR_info(HotelRoom *Room),客戶(hù)入住登記set_C_info(HotelRoom *Room),修改客房信息(Change_HR_info(HotelRoom *Room),退房結(jié)算Count(HotelRoom *Room),顯示所有的客房信息PrintAll(HotelRoom *Ro
3、om),通過(guò)房號(hào)、姓名以及空房間查詢(xún)客房find_choose(HotelRoom *Room) 1.2、總體方案。 設(shè)置一個(gè)設(shè)置Cus基類(lèi),用于儲(chǔ)存客戶(hù)的基本信息,包括姓名(string name)、身份證號(hào)碼(string ID)、入住天數(shù)(int Day)、訂金(int subscription),并用get_C_info()函數(shù)實(shí)現(xiàn)Cus數(shù)據(jù)的獲取。還有show_C_info()函數(shù)實(shí)現(xiàn)客戶(hù)基本信息的顯示。 從Cus基類(lèi)派生出一個(gè)派生類(lèi)HotelRoom,用于存儲(chǔ)客房的基本信息,包括房號(hào)(num)、房間類(lèi)型(Type)、房?jī)r(jià)(Price)。還有普通的成員函數(shù)get_HR_info()、
4、get_HR1_info()、show_HR_info()、show_HRC_info(),它們的作用是輸入客房信息、輸入總的信息,顯示客房信息,顯示總的信息。并且在HotelRoom類(lèi)中含有HotelRoom無(wú)參的構(gòu)造函數(shù)對(duì)客房信息進(jìn)行初始化。 類(lèi)體系設(shè)計(jì):Cus顧客類(lèi):包括姓名(string name)、身份證號(hào)碼(string ID)、入住天數(shù)(int Day)、訂金(int subscription)HotelRoom派生類(lèi):包括房號(hào)(int num)、房間類(lèi)型(string Type)、房?jī)r(jià)(string Price)對(duì)上述各個(gè)功能的函數(shù)進(jìn)行聲明,然后對(duì)各個(gè)函數(shù)進(jìn)行定義,實(shí)現(xiàn)不同的功
5、能。 在主函數(shù)中用一個(gè)swtich函數(shù),選擇不同的功能 二、程序分析 2.1、功能圖 1、主系統(tǒng)界面開(kāi)始 按需求選擇相應(yīng)功能出現(xiàn)好運(yùn)來(lái)酒店管理系統(tǒng)界面其他輸入7功能5、顯示所有客房信息功能1、客房信息錄入功能4、顧客退房結(jié)算功能3、修改顧客信息功能2、顧客入住登記功能6、查詢(xún)客房信息進(jìn)入相應(yīng)功能系統(tǒng)2、子系統(tǒng)界面子系統(tǒng):查詢(xún)所有客房信息功能:通過(guò)房號(hào)、用戶(hù)姓名查詢(xún)客房信息,并顯示所有空房間。功能1、錄入客房信息初始信息。功能2、通過(guò)不同的選擇,能通過(guò)房號(hào)、用戶(hù)姓名查詢(xún)。功能3、能夠顯示要查詢(xún)的客房信息。功能3、查詢(xún)所有空客房功能2、通過(guò)姓名查詢(xún)客房信息功能1、通過(guò)房號(hào)查詢(xún)客房信息按需求選擇(1
6、-4)進(jìn)入查詢(xún)系統(tǒng)界面開(kāi)始輸入其他42.2、詳細(xì)說(shuō)明2.2.1、主系統(tǒng)界面說(shuō)明1、 類(lèi)名:Cus。內(nèi)容:儲(chǔ)存客戶(hù)的基本信息,包括姓名(string name)、身份證號(hào)碼(string ID)、入住天數(shù)(int Day)、訂金(int subscription),并用get_C_info()函數(shù)實(shí)現(xiàn)Cus數(shù)據(jù)的獲取。還有show_C_info()函數(shù)實(shí)現(xiàn)客戶(hù)基本信息的顯示。功能:作為下面定義派生類(lèi)的基類(lèi)。程序源代碼:class Cus/客戶(hù)信息 public: string ID; string name; int Day; int subscription;/訂金 void get_C_in
7、fo();void show_C_info(); Cus();void Cus:get_C_info()cout<<"客戶(hù)姓名:" cin>>name; cout<<"客戶(hù)身份證信息:" cin>>ID; cout<<"訂金:" cin>>subscription; cout<<"入住天數(shù)" cin>>Day;void Cus:show_C_info() cout<<"客戶(hù)姓名:"<
8、<name<<endl; cout<<"客戶(hù)身份證信息:"<<ID<<endl; cout<<"訂金:"<<subscription<<endl; cout<<"入住天數(shù)"<<Day<<endl;2、類(lèi)名:HotelRoom繼承類(lèi)型:公有繼承內(nèi)容:用于存儲(chǔ)客房的基本信息,包括房號(hào)(int num)、房間類(lèi)型(string Type)、房?jī)r(jià)(int Price)。還有成員函數(shù)get_HR_info()、get_H
9、R1_info()、show_HR_info()、show_HRC_info(),它們的作用是輸入客房信息、輸入總的信息,顯示客房信息,顯示總的信息。并且在HotelRoom類(lèi)中含有HotelRoom無(wú)參的構(gòu)造函數(shù)對(duì)客房信息進(jìn)行初始化。功能:基類(lèi)Cus的派生,對(duì)客房信息進(jìn)行儲(chǔ)存。程序源代碼:class HotelRoom:public Cus public: int Price; string Type; int num; int money()return(Price*Day-subscription);/結(jié)算金額函數(shù) void get_HR_info(); void show_HR_inf
10、o(); void show_HRC_info(); void get_HR1_info(); HotelRoom()/無(wú)參的構(gòu)造函數(shù),對(duì)數(shù)據(jù)成員進(jìn)行初始化num=0; subscription=0; Price=0; Type="空" Day=0; name="空" ID="0"void HotelRoom:get_HR_info()/輸入客房信息cout<<"房間號(hào):"cin>>num; cout<<"房間類(lèi)型:"cin>>Type;cout&
11、lt;<"房間價(jià)格:"cin>>Price;void HotelRoom:get_HR1_info()/輸入總的信息 cout<<"房間類(lèi)型:"cin>>Type;cout<<"房間價(jià)格: "cin>>Price;void HotelRoom:show_HR_info()/顯示客房信息 cout<<"房間號(hào): "<<num<<endl; cout<<"房間類(lèi)型:"<<Ty
12、pe<<endl;cout<<"房間價(jià)格: "<<Price<<endl;void HotelRoom:show_HRC_info()/顯示總的信息 cout<<"房間號(hào):"<<num<<endl; cout<<"房間類(lèi)型:"<<Type<<endl;cout<<"房間價(jià)格: "<<Price<<endl;show_C_info();3、主函數(shù)。函數(shù)名稱(chēng):mai
13、n()函數(shù)類(lèi)型:int調(diào)用的函數(shù):set_C_info(HotelRoom *Room)、set_HR_info(HotelRoom *Room)、Display_HR_info(HotelRoom *Room)、add_HR_info(HotelRoom *Room)、Change_HR_info(HotelRoom *Room)、PrintAll(HotelRoom *Room)、PrintAll(HotelRoom *Room)、Count(HotelRoom *Room)、find_HR_ByNum(HotelRoom *Room)、find_HR_ByName(HotelRoom *
14、Room)功能:建立一個(gè)主函數(shù),系統(tǒng)的主界面有這里產(chǎn)生。通過(guò)不同的選擇實(shí)現(xiàn)相應(yīng)的功能。程序源代碼:/*主函數(shù),系統(tǒng)界面,用switch語(yǔ)句實(shí)現(xiàn)功能選擇*/int main()HotelRoom Room40;while(1)cout<<"nn 歡迎入住好運(yùn)來(lái)酒店 nn"cout<<"*nn"cout<<"* 1.錄入客房信息 *nn"cout<<"* 2.客戶(hù)入住登記 *nn"cout<<"* 3.修改客房信息 *nn"cout<
15、<"* 4.客戶(hù)退房結(jié)算 *nn"cout<<"* 5.顯示所有客房信息 *nn"cout<<"* 6.查詢(xún)客房信息 *nn"cout<<"* 7.退出系統(tǒng) *nn"cout<<"*nn"cout<<"請(qǐng)選擇(請(qǐng)輸入1-7數(shù)字):"int choose=0;cin>>choose;system("cls");switch(choose) case 1:set_HR_info(Ro
16、om);break; /*輸入客房信息*/ case 2:set_C_info(Room);break; /*客人入住登記*/ case 3:Change_HR_info(Room);break; /*修改客房信息*/ case 4:Count(Room);break; /*客戶(hù)退房*/ case 5:PrintAll(Room);break; /*查詢(xún)所有客房信息*/ case 6:find_choose(Room);break; /*查詢(xún)*/case 7:exit(0); /*退出*/ default: break;return 0; 4、函數(shù)名稱(chēng):set_C_info(HotelRoom
17、 *Room)/客戶(hù)登記 函數(shù)類(lèi)型:void 函數(shù)變量:對(duì)錄入系統(tǒng)的房號(hào)進(jìn)行記錄(int Num)、對(duì)錄入的Y、N進(jìn)行記錄(string p) 調(diào)用基類(lèi):Cus 調(diào)用派生類(lèi)名稱(chēng):HotelRoom 功能:客戶(hù)入住登記信息,通過(guò)for循環(huán)和if語(yǔ)句找到要入住的客房,并顯示其信息。然后詢(xún)問(wèn)客戶(hù)是否要訂房,若輸入Y則繼續(xù)訂房,并調(diào)用get_C_info()函數(shù)錄入客戶(hù)信息,若輸入N,則取消訂房,其他輸入均為無(wú)效操作。通過(guò)if語(yǔ)句若找到的房間其入住天數(shù)不為0則證明該房間已有人住,系統(tǒng)提示已有人住。 程序源代碼:void set_C_info(HotelRoom *Room)/*客戶(hù)登記int Num;
18、 int t=0; cout<<"輸入房間號(hào)碼:" cin>>Num; for(int i=0;i<30;i+)if(Num=Roomi.num&&Roomi.Day=0)cout<<"房間已找到!"cout<<"房間類(lèi)型:"<<Roomi.Type<<endl;cout<<"房間價(jià)格:"<<Roomi.Price<<endl;cout<<"請(qǐng)輸入客戶(hù)信息:&quo
19、t;<<endl;cout<<"是否確定要訂房?(Y/N)"string p;cin>>p;if(p="Y")Roomi.get_C_info();cout<<"信息錄入成功!"<<endl; else if(p="N") cout<<"取消訂房!"<<endl; else cout<<"無(wú)效操作!"<<endl; t+; else if(Num=Roomi.num&a
20、mp;&Roomi.Day!=0)cout<<"此房已住!" t+; else if(t=0&&i=39) cout<<"沒(méi)有該房間!" system("pause"); system("cls");5、 函數(shù)名稱(chēng):set_HR_info(HotelRoom *Room)/*客房信息的錄入函數(shù)類(lèi)型:void函數(shù)變量:房間數(shù)(int size)、對(duì)輸入的Y、N進(jìn)行記錄(string P)功能:客房信息的錄入。用if語(yǔ)句判斷原有是否已有住房信息。若無(wú),輸入要錄入的客房數(shù),
21、用for循環(huán)語(yǔ)句對(duì)房號(hào)進(jìn)行增加知道錄入完畢,若有,系統(tǒng)提示是否要繼續(xù)錄入,繼續(xù)輸入Y,取消輸入N。程序源代碼:void set_HR_info(HotelRoom *Room)/*客房信息錄入if(Room0.num=0)int size;cout<<"暫無(wú)住房信息,請(qǐng)?zhí)砑樱?quot;<<endl;static int Number=1;cout<<"請(qǐng)輸入要添加的房間數(shù):"cin>>size;for(int i=0;i<size;i+)Roomi.num=Number+;cout<<"
22、房間號(hào)碼:"<<Roomi.num<<endl;Roomi.get_HR1_info();cout<<endl; cout<<"客房信息錄入成功!"<<endl; else string P;cout<<"客房信息已有,是否要添加房間?(Y/N)"cin>>P;if(P="Y")add_HR_info(Room);else if(P="N")cout<<"已取消添加!"<<end
23、l;else cout<<"非法的操作!"<<endl; system("pause"); system("cls");6、函數(shù)名稱(chēng):Count(HotelRoom *Room)/*退房結(jié)算函數(shù)類(lèi)型:void函數(shù)變量:記錄輸入的房間號(hào)(int Num)、對(duì)輸入的Y、N進(jìn)行記錄(string B)功能:客戶(hù)退房結(jié)算。通過(guò)for循環(huán)和if語(yǔ)句對(duì)輸入的要退的房間號(hào)碼的基本信息進(jìn)行判斷,輸出基本信息,并通過(guò)money()計(jì)算要交的費(fèi)用。系統(tǒng)提示是否要繼續(xù)退房,若退輸入Y,各項(xiàng)信息歸為初始值,不退則輸入N,輸入其他系統(tǒng)提
24、示為無(wú)效操作。通過(guò)if語(yǔ)句判斷,當(dāng)輸入房間的入住天數(shù)為0時(shí),系統(tǒng)提示為空房間,不用退房,當(dāng)輸入房間的房號(hào)>39或類(lèi)型為初始值時(shí),系統(tǒng)提示沒(méi)有該房間,操作無(wú)效。程序源代碼:void Count(HotelRoom *Room)/退房結(jié)算int Num; int t=0; cout<<"請(qǐng)輸入房間號(hào)碼:" cin>>Num; for(int i=0;i<40;i+) if(Num=Roomi.num&&Roomi.Day!=0)string B; cout<<"房間已找到!"<<en
25、dl; Roomi.show_HRC_info();cout<<"房間費(fèi)用"<<Roomi.money()<<endl;Roomi.money(); cout<<"請(qǐng)確定是否要退房(Y/N):" cin>>B; if(B="Y") Roomi.Day=0; Roomi.subscription=0; R="空" Roomi.ID="0" cout<<"退房成功!"<<endl
26、; else if(B="N")cout<<"取消退房!"<<endl; else cout<<"無(wú)效操作!"<<endl; t+; else if(Num=Roomi.num&&Roomi.Day=0)cout<<"空房間!" t+; else if(t=0&&i=39&&Roomi.Type="空")cout<<"沒(méi)有該房間!" system("
27、;pause"); system("cls");7、函數(shù)名稱(chēng):PrintAll(HotelRoom *Room)/顯示所有信息函數(shù)類(lèi)型:void函數(shù)變量:int t=0功能:顯示所有的客房信息。用for循環(huán)語(yǔ)句和show_HRC_info()函數(shù)輸出所有的客房信息。程序源代碼:void PrintAll(HotelRoom *Room)/*顯示所有信息int t=0;for(int i=0;i<40;i+)if(Roomi.Type!="空")Roomi.show_HRC_info();t+; if(t=0&&i=39)c
28、out<<"暫無(wú)任何客房信息!"<<endl;system("pause");system("cls");8、函數(shù)名稱(chēng):Change_HR_info(HotelRoom *Room)/修改住房信息 函數(shù)類(lèi)型:void 函數(shù)變量:輸入的房間號(hào)碼(int Num),新的姓名(string name2)、新的身份證號(hào)(string ID2)、新的訂金(int subscription2)、新的入住天數(shù)(int Day2)、新的房間價(jià)格(string Price2)、新的房間類(lèi)型(string Type2)、輸入Y、N
29、進(jìn)行記錄(string p)、int t=0 功能:修改住房信息。輸入要修改房間信息的房號(hào),用for循環(huán)和if語(yǔ)句找到符合條件的房間后,界面顯示要修改房間的信息,提示是否要繼續(xù)修改,若繼續(xù)輸入Y,依次輸入修改后的信息,若不修改則輸入N,其他輸入均提示為無(wú)效操作。 程序源代碼: void Change_HR_info(HotelRoom *Room)/修改住房信息int Num; cout<<"請(qǐng)輸入要修改的房間號(hào)碼:"<<endl; cin>>Num; string name2; string ID2; int subscription2
30、; int Day2; string Price2; string Type2; int t=0; for(int i=0;i<40;i+) if(Num=Roomi.num) Roomi.show_HRC_info(); cout<<"房間信息已找到!"<<endl; cout<<"是否要修改房間信息?(Y/N)" string p; cin>>p; if(p="Y") cout<<"客戶(hù)姓名:" cin>>name2; Roomi.n
31、ame=name2; cout<<endl; cout<<"客戶(hù)身份證號(hào)碼:" cin>>ID2; Roomi.ID=ID2; cout<<endl; cout<<"訂金:" cin>>subscription2; Roomi.subscription=subscription2; cout<<"退房時(shí)間延長(zhǎng)至" cin>>Day2; cout<<"天后" Roomi.Day=Day2; cout<&l
32、t;endl; cout<<"修改成功!"<<endl; else if(p="N")cout<<"已取消修改"else cout<<"無(wú)效操作!" t+; else if(t=0&&i=39&&Roomi.Type="空")cout<<"沒(méi)有該房間!"<<endl; system("pause"); system("cls"); 9
33、、函數(shù)名稱(chēng):add_HR_info(HotelRoom *Room)/添加客房信息 函數(shù)類(lèi)型:void 函數(shù)變量:static int Number=1、對(duì)輸入的Y、N記錄(string P)功能:客房信息的添加。作為set_HR_info(HotelRoom *Room)/錄入住房信息的子函數(shù)。當(dāng)以錄入客房信息還要繼續(xù)添加時(shí),調(diào)用此函數(shù)。先輸入要添加的房間號(hào)。使用do while循環(huán)和if語(yǔ)句,每次只添加一間房間的信息,利用Number+直到房間號(hào)>40。 程序源代碼:void add_HR_info(HotelRoom *Room)/*添加住房信息static int Number=
34、1; string P; doint Number=1; for(int i=0;i<40;i+) if(Roomi.num=0) Roomi.num=Number+; cout<<"房間號(hào)碼:"<<Roomi.num<<endl; Roomi.get_HR1_info(); cout<<"房間添加成功,是否繼續(xù)添加?(Y/N)" cin>>P;break; else Number+;while(P="Y"); if(P="N")cout<&l
35、t;"已取消添加!"<<endl; else cout<<"此操作非法!"<<endl;2.2.2、子系統(tǒng)說(shuō)明1、函數(shù)名稱(chēng):find_choose(HotelRoom *Room)/*選擇查詢(xún) 函數(shù)類(lèi)型:void 函數(shù)變量:while控制條件(int P)、對(duì)輸入的數(shù)字進(jìn)行記錄(int choose) 調(diào)用的函數(shù):find_HR_ByNum(Room)、find_HR_ByName(Room)、Display_HR_info(Room)功能:選擇查詢(xún)。利用switch語(yǔ)句,1-4的選項(xiàng)代表的功能分別是:按照房號(hào)查詢(xún)、按
36、照姓名查詢(xún)、查詢(xún)所有空房間、返回主菜單。程序源代碼:void find_choose(HotelRoom *Room)/*選擇查詢(xún)int P=0; while(P=0)cout<<"nn 客房管理系統(tǒng) nn" cout<<"*nn" cout<<" 1.通過(guò)房號(hào)查詢(xún)客房nn" cout<<" 2.通過(guò)客戶(hù)姓名查詢(xún)客房nn" cout<<" 3.查詢(xún)所有空客房nn" cout<<" 4.返回主菜單nn" c
37、out<<"請(qǐng)選擇(請(qǐng)輸入1-4數(shù)字):" int choose=0; cin>>choose; system("cls"); switch (choose) case 1:find_HR_ByNum(Room);break; case 2:find_HR_ByName(Room);break; case 3:Display_HR_info(Room);break; case 4:P=4;break; default:;break;2、函數(shù)名稱(chēng):find_HR_ByNum(HotelRoom *Room)/*通過(guò)房號(hào)查詢(xún) 函數(shù)類(lèi)型
38、:void 函數(shù)變量:輸入的房號(hào)(int Num)、int t=0調(diào)用的函數(shù):show_HRC_info() 功能:通過(guò)房號(hào)查詢(xún)客房信息。輸入要查詢(xún)的房間號(hào)碼,通過(guò)for循環(huán)和if語(yǔ)句找到滿(mǎn)足條件的額房間并輸出客房信息。若輸入的房間號(hào)碼>40,則提示沒(méi)有該房間。 程序源代碼: void find_HR_ByNum(HotelRoom *Room)/*通過(guò)房號(hào)查詢(xún)int Num; int t=0; cout<<"輸入要查詢(xún)的房間號(hào):" cin>>Num; for(int i=0;i<40;i+) if(Num=Roomi.num&&
39、amp;Roomi.Day!=0)Roomi.show_HRC_info();cout<<"此房已?。?quot;<<endl;cout<<Roomi.Day<<"天后退房!"<<endl;t+; else if(Num=Roomi.num&&Roomi.Day=0)Roomi.show_HRC_info();t+; else if(t=0&&i=39&&Roomi.Type="空") cout<<"沒(méi)有該房間!&q
40、uot;<<endl; system("pause"); system("cls");4、函數(shù)名稱(chēng):find_HR_ByName(HotelRoom *Room)/通過(guò)姓名查詢(xún)函數(shù)類(lèi)型:void函數(shù)變量:輸入的姓名(string Name)、int t=0功能:通過(guò)姓名查詢(xún)客房信息。輸入要查詢(xún)的姓名,用for循環(huán)和if語(yǔ)句找到符合條件的房間并輸出其信息。若不符合條件則輸出查詢(xún)不到此客戶(hù)。程序源代碼:void find_HR_ByName(HotelRoom *Room)/*通過(guò)姓名查詢(xún)int t=0; string Name; cout<
41、;<"請(qǐng)輸入客戶(hù)姓名:" cin>>Name; for(int i=0;i<40;i+)if(Name=R&&Roomi.Day!=0)Roomi.show_HRC_info();cout<<"此房已住!"cout<<Roomi.Day<<"天后退房!"t+; else if(Name=R&&Roomi.Day=0)Roomi.show_HRC_info();t+; else if(t=0&&
42、i=39) cout<<"查詢(xún)不到此客戶(hù)!"<<endl; system("pause"); system("cls");5、 函數(shù)名稱(chēng):Display_HR_info(HotelRoom *Room)/顯示所有空客房信息函數(shù)類(lèi)型:void函數(shù)變量:int t=0功能:顯示所有空房間。通過(guò)for循環(huán)和if語(yǔ)句找到滿(mǎn)足入住天數(shù)為0、房號(hào)不為0條件的房間并輸出客房信息,如果沒(méi)有滿(mǎn)足該條件的房間,則提示暫無(wú)空房。程序源代碼:void Display_HR_info(HotelRoom *Room)/*顯示所有空客房信
43、息int t=0; for(int i=0;i<40;i+)if(Roomi.Day=0&&Roomi.num!=0)Roomi.show_HR_info(); t+; else if(t=0&&i=39)cout<<"暫無(wú)空房!" system("pause"); system("cls");三、測(cè)試報(bào)告3.1測(cè)試結(jié)果在程序基本設(shè)計(jì)好之后,我們對(duì)整個(gè)程序進(jìn)行了一次系統(tǒng)的測(cè)試。對(duì)各個(gè)功能都用數(shù)據(jù)進(jìn)行了檢測(cè),以確保程序的正確性。以下是這次測(cè)試的具體結(jié)果:1、系統(tǒng)主界面運(yùn)行該程序,首先進(jìn)入
44、酒店管理系統(tǒng)的主界面,該界面給出了各個(gè)功能的介紹。2、錄入客房信息通過(guò)系統(tǒng)主界面選擇1、錄入客房信息,依次錄入客房信息后,系統(tǒng)提示客房信息錄入成功,1號(hào)功能實(shí)現(xiàn)。3、客戶(hù)入住登記選擇2、系統(tǒng)在顯示房間號(hào)碼后,顯示該房間的基本信息,系統(tǒng)提示是否要繼續(xù)訂房。確定訂房后,輸入客戶(hù)的基本信息以及入住天數(shù),信息錄入成功。4、修改客房信息選擇3、輸入要修改的房號(hào),系統(tǒng)提示是否要繼續(xù)修改該房間的客房信息。 選擇繼續(xù)修改以后,輸入新的客房信息,系統(tǒng)提示修改成功。5、客戶(hù)退房結(jié)算 選擇4、輸入要退的房間號(hào),界面顯示客房和客戶(hù)的信息以及要付的房費(fèi)。系統(tǒng)提示是否要繼續(xù)退房,若繼續(xù)退房輸入Y,若不退測(cè)輸入N。輸入Y后
45、,系統(tǒng)提示退房成功。6、顯示所有客房信息 選擇5、界面顯示所有的客房信息,在上面已經(jīng)退了1號(hào)房。 7、查詢(xún)客房信息 選擇6、顯示查詢(xún)選擇界面,按照房號(hào)和客戶(hù)姓名以及空房間選擇(1-4)。若按照房號(hào)查詢(xún),輸入房間號(hào)碼若按照姓名查詢(xún),輸入姓名若想查詢(xún)剩余的所有空房間8、退出系統(tǒng),選擇7。3.2測(cè)試總結(jié) 以上就是此次最終測(cè)試的主要流程、輸入數(shù)據(jù)以及輸出數(shù)據(jù)及部分結(jié)果。運(yùn)行結(jié)果也都符合要求。但在上面運(yùn)行結(jié)果的背后,我們對(duì)程序進(jìn)行了很多次修改。也遇到了很多問(wèn)題,但在我們小組的共同努力下和老師幫助下也都一一克服。 就最后的程序而言也還有一些遺憾,比如并沒(méi)有運(yùn)用文件存儲(chǔ)的知識(shí),去掉了刪除客房信息的選項(xiàng),這些
46、是我們還需要完善的地方。四、總結(jié)本次課設(shè)經(jīng)歷了一個(gè)多星期,我們由最初的選定材料到一步步的寫(xiě)出程序、修改程序到最后確定程序,雖然經(jīng)歷了一些困難,但最后還是得到了想要的結(jié)果。就個(gè)人而言,我體會(huì)比較深的一點(diǎn)是團(tuán)隊(duì)互相幫助學(xué)習(xí)的過(guò)程,自己看書(shū)的經(jīng)驗(yàn),以及從網(wǎng)上或其他各種途徑獲得信息和知識(shí)的經(jīng)驗(yàn)。鍛煉了我如何使用所學(xué)的基礎(chǔ)知識(shí),解決實(shí)際問(wèn)題的能力。同時(shí)也提高了我查閱文獻(xiàn)、對(duì)程序整體把握的能力。有很多理論上說(shuō)的過(guò)去的代碼,但在實(shí)際操作中卻是行不通的。這種困惑,有很多已經(jīng)通過(guò)實(shí)際操作解決了,并且能夠深刻的認(rèn)識(shí),但同時(shí)也有一些不明白,只能通過(guò)避開(kāi)這種方法、換方法實(shí)現(xiàn)。在設(shè)計(jì)課程設(shè)計(jì)時(shí),要提前做好比較詳細(xì)的規(guī)劃
47、。當(dāng)你寫(xiě)完代碼而編譯通過(guò)不了再回頭找錯(cuò)誤時(shí),往往是比較困難的。所以在寫(xiě)代碼之前,我們小組進(jìn)行了討論和規(guī)劃,將要實(shí)現(xiàn)的內(nèi)容具體分析,才將代碼輸入電腦。面向?qū)ο蟪绦蛟O(shè)計(jì)的完成,讓我懂得了真理的重要性,理論和實(shí)踐的相結(jié)合,才能真正把握和掌握所學(xué)的知識(shí)。附錄一:參考文獻(xiàn):1. 譚浩強(qiáng)C+面向?qū)ο蟪绦蛟O(shè)計(jì)(第2版)清華大學(xué)出版社.2. 李延軍 黃國(guó)勇 張娟 面對(duì)對(duì)象程序設(shè)計(jì)(C+)清華大學(xué)出版社.附錄二:程序源代碼: #include<iostream>#include<string>#include<cstdlib>using namespace std;const
48、 int R=40;/房間總數(shù)40class Cus/客戶(hù)信息 public: string ID; string name; int Day; int subscription;/訂金 void get_C_info();void show_C_info(); Cus();void Cus:get_C_info()cout<<"客戶(hù)姓名:" cin>>name; cout<<"客戶(hù)身份證信息:" cin>>ID; cout<<"訂金:" cin>>subscri
49、ption; cout<<"入住天數(shù)" cin>>Day;void Cus:show_C_info() cout<<"客戶(hù)姓名:"<<name<<endl; cout<<"客戶(hù)身份證信息:"<<ID<<endl; cout<<"訂金:"<<subscription<<endl; cout<<"入住天數(shù)"<<Day<<endl;cl
50、ass HotelRoom:public Cus public: int Price; string Type; int num; int money()return(Price*Day-subscription);/結(jié)算金額函數(shù) void get_HR_info(); void show_HR_info(); void show_HRC_info(); void get_HR1_info(); HotelRoom()/無(wú)參的構(gòu)造函數(shù),對(duì)數(shù)據(jù)成員進(jìn)行初始化num=0; subscription=0; Price=0; Type="空" Day=0; name="空
51、" ID="0"void HotelRoom:get_HR_info()/輸入客房信息cout<<"房間號(hào):"cin>>num; cout<<"房間類(lèi)型:"cin>>Type;cout<<"房間價(jià)格:"cin>>Price;void HotelRoom:get_HR1_info()/顯示客房信息 cout<<"房間類(lèi)型:"cin>>Type;cout<<"房間價(jià)格: &
52、quot;cin>>Price;void HotelRoom:show_HR_info()/輸入總的信息 cout<<"房間號(hào): "<<num<<endl; cout<<"房間類(lèi)型:"<<Type<<endl;cout<<"房間價(jià)格: "<<Price<<endl;void HotelRoom:show_HRC_info()/顯示總的信息 cout<<"房間號(hào):"<<num
53、<<endl; cout<<"房間類(lèi)型:"<<Type<<endl;cout<<"房間價(jià)格: "<<Price<<endl;show_C_info(); void set_C_info(HotelRoom *Room);void set_HR_info(HotelRoom *Room);void Display_HR_info(HotelRoom *Room);void add_HR_info(HotelRoom *Room);void Change_HR_info(Ho
54、telRoom *Room);void find_choose(HotelRoom *Room);void find_HR_ByNum(HotelRoom *Room);void find_HR_ByName(HotelRoom *Room);void PrintAll(HotelRoom *Room);void Count(HotelRoom *Room);void set_HR_info(HotelRoom *Room)/*客房信息的錄入if(Room0.num=0)int size;cout<<"暫無(wú)住房信息,請(qǐng)?zhí)砑樱?quot;<<endl;static int Number=1;cout<<"請(qǐng)輸入要添加的房間數(shù):"c
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2026學(xué)年隴南地區(qū)武都區(qū)三上數(shù)學(xué)期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 2025-2026學(xué)年遼寧省葫蘆島市綏中縣數(shù)學(xué)三年級(jí)第一學(xué)期期末預(yù)測(cè)試題含解析
- 2025-2026學(xué)年甘孜藏族自治州道孚縣數(shù)學(xué)三年級(jí)第一學(xué)期期末達(dá)標(biāo)檢測(cè)模擬試題含解析
- 2025-2026學(xué)年保定市安新縣三上數(shù)學(xué)期末學(xué)業(yè)水平測(cè)試模擬試題含解析
- 2024年江蘇省揚(yáng)州市江都區(qū)大橋片數(shù)學(xué)三年級(jí)第一學(xué)期期末檢測(cè)試題含解析
- 七年級(jí)英語(yǔ)下冊(cè) Units 7-12 復(fù)習(xí)課件
- 八年級(jí)生物上冊(cè)-動(dòng)物行為的生理基礎(chǔ)-蘇教版課件
- 2025年衛(wèi)生資格考試切實(shí)可行的備考措施試題及答案
- 自考行政管理2025年細(xì)致準(zhǔn)備試題及答案歸納
- 時(shí)間安排與衛(wèi)生資格考試試題及答案
- 語(yǔ)文綜合實(shí)踐:走進(jìn)傳統(tǒng)節(jié)日探尋文化根脈 課件-【中職專(zhuān)用】高一語(yǔ)文同步課堂(高教版2023基礎(chǔ)模塊下冊(cè))
- 教師課堂教學(xué)評(píng)價(jià)標(biāo)準(zhǔn)
- 去極端化教育宣講
- 光伏防火培訓(xùn)課件
- 家長(zhǎng)講堂:法制主題教育
- 腫瘤科進(jìn)修心得體會(huì)護(hù)理
- 第五單元 生物與環(huán)境 大單元教學(xué)設(shè)計(jì)-2023-2024學(xué)年科學(xué)四年級(jí)下冊(cè)蘇教版
- 生長(zhǎng)激素在臨床中的應(yīng)用
- 武漢市2025屆高中畢業(yè)生二月調(diào)模擬卷試題
- 衛(wèi)生監(jiān)督信息員培訓(xùn)課件
- 杜邦分析法公式
評(píng)論
0/150
提交評(píng)論