c++酒店管理系統(tǒng)課程設(shè)計(jì)文檔良心出品_第1頁
c++酒店管理系統(tǒng)課程設(shè)計(jì)文檔良心出品_第2頁
c++酒店管理系統(tǒng)課程設(shè)計(jì)文檔良心出品_第3頁
c++酒店管理系統(tǒng)課程設(shè)計(jì)文檔良心出品_第4頁
c++酒店管理系統(tǒng)課程設(shè)計(jì)文檔良心出品_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、面向?qū)ο蟪绦蛟O(shè)計(jì)II課程設(shè)計(jì)指導(dǎo)書題目:賓館治理系統(tǒng)學(xué)院:計(jì)算機(jī)科學(xué)與工程學(xué)院專業(yè):軟件工程班級:133301學(xué)號:20213503 20213490 20213482姓名:王帥 劉俊 甘雨指導(dǎo)老師:韓旭明設(shè)計(jì)日期:2021.6.24-2021.6.30一、課程設(shè)計(jì)的目的1學(xué)習(xí)綜合運(yùn)用C高級語言課程和其他先修課程的知識,提升分析和解決實(shí)際問題 的的水平,進(jìn)一步穩(wěn)固、加深和拓寬所學(xué)的知識; 進(jìn)一步增強(qiáng)結(jié)構(gòu)化程序設(shè)計(jì)的 思想,加深對高級語言根本語言要素和限制結(jié)構(gòu)的理解.2全面系統(tǒng)的學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)的根本概念、根本語法和編程方法;獨(dú)立完成有一定工作量的程序設(shè)計(jì)任務(wù),同時(shí)強(qiáng)調(diào)好的程序設(shè)計(jì)風(fēng)格.3掌

2、握程序設(shè)計(jì)中的常用算法和 C語言的編程技巧和上機(jī)調(diào)試程序的方法.4在參與一系列子工程的實(shí)踐過程中,提升如何綜合運(yùn)用所學(xué)知識解決實(shí)際問題的 水平,以及獲得相關(guān)工程治理和團(tuán)隊(duì)合作等眾多方面的具體經(jīng)驗(yàn).二、課程設(shè)計(jì)的任務(wù)根據(jù)如下要求,運(yùn)用C+郵言,編寫一套可用的較為完善的賓館住宿治理系統(tǒng)軟件 兩 人分模塊合作1對賓館根本信息【房間數(shù)量、房間類別標(biāo)間、單間、套房、收費(fèi)標(biāo)準(zhǔn)等】在 適當(dāng)范圍內(nèi)自行規(guī)定.2能夠?qū)崿F(xiàn)預(yù)定登記、入住登記、退房結(jié)算等功能;房間狀態(tài)空房、入住、預(yù)定 能夠以一定方式直觀地表現(xiàn).3能夠錄入住宿人員信息、計(jì)算客戶消費(fèi)總額并生成賬單,賬單信息存入到磁盤文 件當(dāng)中去.4能夠相對靈活地查詢房間

3、狀態(tài)、入住情況、空房情況、預(yù)訂情況等內(nèi)容.5能夠產(chǎn)生各類報(bào)表,如房間信息、入住信息、消費(fèi)表單等在磁盤文件當(dāng)中可以查 看它們的信息.、系統(tǒng)設(shè)計(jì)方案3.1 系統(tǒng)詳細(xì)描述3.1.1 系統(tǒng)設(shè)計(jì)背景隨著人民生活水平的提升,旅游出行的人越來越多,賓館的客流量不斷增加,普 通的手寫登記太過復(fù)雜經(jīng)常出現(xiàn)信息喪失,也不適合現(xiàn)在的節(jié)約型社會的開展,賓 館在正常運(yùn)營中需要對客房資源、顧客信息、退房信息等進(jìn)行治理,利用客房治理 系統(tǒng)及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,有利于提升治理的效率.本工程作為C+課程設(shè)計(jì)的練習(xí)工程提出,目的是為了提升同學(xué)們系統(tǒng)的開發(fā),那么提升大家的實(shí)踐能 力.所以開發(fā)一個(gè)符合自身賓館實(shí)際情況的工作平

4、臺是十分必要的.3.1.2 系統(tǒng)設(shè)計(jì)詳細(xì)信息系統(tǒng)使用對象設(shè)定為百康賓館.百康酒店是一家鄉(xiāng)鎮(zhèn)中小型賓館,三層建筑, 擁 有各類房間共20間.其中一層均為單人問,共 9間,房號101-109;二層為均雙人 問,共6間,房號201-206;三層均為豪華套房,共5間,房號301-305.各類房間均設(shè)有電視、櫥柜、內(nèi)網(wǎng) 、風(fēng)扇、暖氣等根底設(shè)施,24小時(shí)熱水供給,可淋浴.一層前臺處設(shè)有便捷商店,當(dāng)時(shí)結(jié)算,不計(jì)入住宿賬單.可通過內(nèi)網(wǎng) 購置, 免費(fèi)送至房間.A、收費(fèi)標(biāo)準(zhǔn):有按天計(jì)費(fèi)和按小時(shí)計(jì)費(fèi)兩種收費(fèi)標(biāo)準(zhǔn).按天計(jì)費(fèi),標(biāo)準(zhǔn)為單人間170元/天,雙人間280元/天,豪華套房500元/天.按小時(shí)計(jì)費(fèi),標(biāo)準(zhǔn)為單人間2

5、0元/小時(shí),雙人間30元/小時(shí),豪華套房50元/小 時(shí).R計(jì)時(shí)標(biāo)準(zhǔn):按天計(jì)費(fèi)時(shí),從0時(shí)至次日0時(shí)計(jì)一天,不滿一天按一天計(jì)算;按小 時(shí)計(jì)費(fèi)時(shí),不滿一小時(shí)按一小時(shí)計(jì)費(fèi).特殊情形的優(yōu)惠政策不在本設(shè)計(jì)考慮范圍之內(nèi)G定金標(biāo)準(zhǔn):入住定金按預(yù)計(jì)入住時(shí)間*其單日房費(fèi)+500元收取,退房時(shí)充作 房費(fèi)和房屋設(shè)施折損費(fèi)抵償損壞的房內(nèi)設(shè)施,多退少補(bǔ).預(yù)定定金按預(yù)計(jì)訂房 時(shí)間*對應(yīng)房間按大計(jì)算住宿價(jià)格*40%收取,假設(shè)到時(shí)不入住且不續(xù)訂,那么不再退還; 假設(shè)到時(shí)入住,充作入住定金,多退少補(bǔ). 預(yù)定無需繳納定金,但不保證屆時(shí)有 空房間.注:定金數(shù)額可在以上標(biāo)準(zhǔn)數(shù)額之上,退房結(jié)算時(shí)多退少補(bǔ).退房時(shí),室內(nèi)設(shè)施經(jīng)確認(rèn)無損壞情況

6、,那么不收取房屋設(shè)施折損費(fèi).3.2 功能模塊劃分3.2.1 功能模塊描述根據(jù)任務(wù)內(nèi)容要求及賓館相關(guān)情況等信息,百康賓館住宿治理系統(tǒng)需要實(shí)現(xiàn)查詢 功能包括客房總體使用情況查詢、已入住客房查詢、已預(yù)訂客房查詢、閑置房間 信息查詢等查詢方式,訂房登記,入住登記,退房結(jié)算等四大根本功能.系統(tǒng)應(yīng)實(shí) 現(xiàn)對各類信息的靈活查找,客戶信息的錄入、保存與調(diào)用,自動結(jié)算并生成賬單等 操作.為了簡化前臺人員操作并提升其工作效率, 還應(yīng)實(shí)現(xiàn)開始前初始化詢問,訂房或 入住登記時(shí)自動顯示當(dāng)前閑置房間,入住前詢問是否已預(yù)訂,輸入錯(cuò)誤信息時(shí)進(jìn)行 提醒等人性化功能.由以上分析,將系統(tǒng)主要分為以下四大功能模塊,如圖 3.1所示:1

7、客房查詢:包括查詢客房總體使用情況、查詢當(dāng)前閑置房間信息、查詢已入住房 問信息、查詢已預(yù)定房間信息等查詢功能;2訂房登記:包括顯示當(dāng)前閑置房間信息、登記預(yù)定信息等功能;3入住登記:包括顯示當(dāng)前房間總體使用情況、 詢問是否預(yù)定過房間、登記入住人 信息等功能;4退房結(jié)算:包括選擇結(jié)算方式、輸入結(jié)算時(shí)間、計(jì)算住宿費(fèi)用等功能.3.2.2 輸入項(xiàng)以下輸入項(xiàng)均為鍵盤輸入:num房間號 ,intkongxian房間是否空閑 ,intname20名字定義,char name20ID20 身份證號18位阿拉伯?dāng)?shù)字,char ID20lianxifangshi15聯(lián)系方式11 位阿拉伯?dāng)?shù)字,char lianxi

8、fangshi15yajin押金,intyudingriqi預(yù)定日期日期均為8位阿拉伯?dāng)?shù)字,格式為年月日,longruzhushijian入住日期 ,longtianshu預(yù)計(jì)天數(shù),intjiezhiriqi截止日期 ,longp是否初始化0或1, intchose選擇主菜單1,2,3,4 或 5, intt計(jì)費(fèi)方式1或2, inti 子菜單項(xiàng)選擇擇1,2,3,4或5不同模塊可能定義不同,inta是否預(yù)定過房間在ruzhudengji 定義的,int3.2.3 輸出項(xiàng)房問號,int房間類型, char leixing10價(jià)格元/天,int價(jià)格元/小時(shí),int是否空閑,int客人姓名,char

9、name20身份證,char ID20聯(lián)系方式,charlianxifangshi15押金元,int預(yù)定日期,long入住時(shí)間,long預(yù)計(jì)天數(shù),int截止日期,long四、系統(tǒng)實(shí)現(xiàn)與測試4.1主菜單模塊實(shí)現(xiàn)4.1.1主菜單流程圖/Z_一|黑黑Y是否為"r - n、-_ Y一期藍(lán)y是否為;2:._ Y .IN、/1黑瑟卜.是否為:T黑黑卜一是否為?輸入 chosen.幫U山J.“提示IN1< Chos® 一01n一否為 " 5;>N Yv/7/輸出“提示/輸入“按/任意鍵.-圖4.1主菜單流程圖4.1.2主菜單代碼void Menu_Display()

10、 (system("cls");cout<<"tt#"<<endl;cout<<"tt#請輸入您所需要的功能:cout<<"tt# 1.客房查詢2.cout<<"tt# 3.入住登記4.cout<<"tt#5.退出cout<<"tt#感* 謝*您* 的cout<<"tt# 歡送使用百康賓館治理系統(tǒng)#"<<endl;#"<<endl;訂房登記#"&l

11、t;<endl;退 房 #"<<endl;#"<<endl;使 * 用 #"<<endl;cout<<"tt#"<<endl; void chushihua()(int i3=1,0,1,k=0;for(;k<20;k+)hotelk.num=i0*100+i1*10+i2;strcpy(hotelk.ID,"0");hotelk.jiezhiriqi=0;hotelk.kongxian=0;strcpy(hotelk.lianxifangshi,&qu

12、ot;0");strcpy(,"0");hotelk.ruzhushijian=0;hotelk.tianshu=0;hotelk.yudingriqi=0;switch(i0)單人間");break; 雙人間");break; 套房");break;case 1:hotelk.jiage=17020;strcpy(hotelk.leixing,"case 2:hotelk.jiage=28030;strcpy(hotelk.leixing,"case 3:hotelk.jiage=50050

13、;strcpy(hotelk.leixing,"if(k=8)i0+,i2=0;if(k=14)i0+,i2=0;i2+;)fstream xieru(" 賓館房間信息.txt",ios:out);xieru<<"房間號 類型價(jià)格是否空閑 姓名身份證號聯(lián)系方式押金預(yù)定日期入住時(shí)間 天數(shù)截止日期"<<endl;for(int x=0;x<20;x+)xieru<<hotelx.num<<''<<hotelx.leixing<<''<

14、<hotelx.jiage<<''<<hotelx.kongxian<<' '<<<<''<<hotelx.ID<<' '<<hotelx.lianxifangshi<<' '<<hotelx.yajin<<''<<hotelx.yudingriqi<<' '<<hotelx.ruzhush

15、ijian<<''<<hotelx.tianshu<<' '<<hotelx.jiezhiriqi<<endl;)xieru.close();)void main()int p=0;cout<<"是否要初始化房間信息?"cout<<"(是請輸入1,否請輸入0)"<<endl;cin>>p;if(p=1)chushihua();int chose;Menu_Display();cout<<"請輸入

16、選項(xiàng):"cin>>chose;while(chose!=0)switch(chose)用switch語句判斷選擇菜單的功能case 1:search_message();break; /客房查詢case 2:dingfangdengji();break;/ 訂房間case 3:ruzhudengji();break;/入住房間case 4:tuifang();break;/ 退房case 5:exit(0);default:cout<<"輸入錯(cuò)誤,請重新輸入 "<<endl; 提示錯(cuò)誤命令)cout<<"t

17、t#"<<endl;cout<<"tt#請輸入您所需要的功能:cout<<"tt# 1.客房查詢2.cout<<"tt# 3.入住登記4.cout<<"tt#5.退出cout<<"tt#感* 謝*您* 的cout<<"tt#歡送使用百康賓館治理系統(tǒng)#"<<endl;#"<<endl;訂房登記#"<<endl;退房#"<<endl;#"<&l

18、t;endl;使 * 用#"<<endl;cout<<"tt#"<<endl;cout<<"請輸入選項(xiàng):"cin>>chose;while(chose=0)(cout<<"輸入錯(cuò)誤,按任意鍵退出程序:"<<endl;exit(0);4.1.3主菜單模塊測試主菜單界面中顯示客房治理系統(tǒng)的功能選項(xiàng)模塊如圖4.2所示:圖4.2主菜單4.2入住登記模塊實(shí)現(xiàn)4.2.1入住登記流程圖T圖4.3入住登記流程圖4.2.2入住登記代碼void ruzhuden

19、gji() (int a,b=0;string name;ifstream liulan(" 賓館房間信息.txt",ios:in); 定義輸入文件流對象,以輸入方式翻開磁盤文件旅信if(!liulan)/判斷文件是否翻開成功(cerr<<"文件不能讀."<<endl;return;elseliulan.seekg(117,ios:beg);/在輸入文件開頭以參照位置為根底移動假設(shè)干字節(jié)(beg=begin)int i=0; / 存放空閑房間的號cout<<" 房間號 類型 價(jià)格(元/天) 價(jià)格(元/小時(shí))

20、空閑 "<<endl;while (i<20)(liulan>>hoteli.num>>hoteli.leixing>>hoteli.jiage>>hoteli.kongxian>>>>hoteli.ID>>hoteli.lianxifangshi>>hoteli.yajin>>hoteli.yudin griqi>>hoteli.ruzhushijian>>hoteli.tianshu>>hoteli

21、.jiezhiriqi;cout<<setw(4)<<hoteli.num<<setw(8)<<hoteli.leixing<<setw(9)<<hoteli.jiage/100<<setw(14)<<hoteli.jiage%100<<setw(13)<<hoteli.kongxian; /輸出所有房間信息i+,cout<<endl;liulan.close(); / 關(guān)閉文件cout<<"(注:0表示空房間、1表示房間已入住、2表示房間已

22、預(yù)訂)"<<endl;cout<<是否預(yù)訂過房間? "<<endl;cout<<"是,請輸入1,否,請輸入2"<<endl;cin>>a;if(a=1)(cout<<"請輸入房問號:"<<endl;cin>>b;for(i=0;i<20;i+)if(hoteli.num=b)(if(hoteli.yudingriqi!=0)(cout<<"請輸入入住日期:"cin>>hoteli

23、.ruzhushijian; cout<<"請輸入截止日期:"cin>>hoteli.jiezhiriqi;hoteli.yudingriqi=0; else ( cout<<"該房沒有被預(yù)訂過"<<endl; system("pause");else(cout<<"空房間有:"<<endl;for(int k=0;k<20;k+)(if(hotelk.kongxian=0) cout<<hotelk.num<<&

24、quot;"cout<<endl;cout<<"請輸入房問號:;cin>>b;for(i=0;i<20;i+)if(hoteli.num=b)(cout<<"請依次輸入以下信息并加以核對(日期格式:年月日 例如19920503 )"<<endl;cout<<"姓 名:"cin>>;cout<<"身份證號:"cin>>hoteli.ID;cout<<"聯(lián)系方式:

25、"cin>>hoteli.lianxifangshi;cout<<"押金:";cin>>hoteli.yajin;cout<<"天 數(shù):";cin>>hoteli.tianshu;cout<<"入住日期:"cin>>hoteli.ruzhushijian;hoteli.kongxian=2;ofstream xieru("賓館房間信息.txt",ios:out); / 寫回文件xieru<<"房間號類

26、型價(jià)格是否空閑姓名 身份證號聯(lián)系方式 押金預(yù)定日期入住時(shí)間天數(shù) 截止日期"<<endl;for(i=0;i<20;i+)xieru<<hoteli.num<<' '<<hoteli.leixing<<' '<<hoteli.jiage<<''<<hoteli.kongxian<<' '<<<<''<<hoteli.ID<<&

27、#39;'<<hoteli.lianxifangshi<<''<<hoteli.yajin<<' '<<hoteli.yudingriqi<<' '<<hoteli.ruzhushijian<<''<<hoteli.tianshu<<' '<<hoteli.jiezhiriqi<<endl;xieru.close();cout<<"登記成功&q

28、uot;<<endl;4.2.3入住登記模塊測入住登記界面顯示了房間使用情況以及提示以前是否預(yù)訂過房間如圖4.4所示:下;課程設(shè)計(jì)Debug俱慎住蓿省理親統(tǒng)總5房間號類型價(jià)格?元/天?丁格?兀/小時(shí)1011702021821702日0103170203104170200185170201061702001071702001萌170201091702.02012803012022903002032803002042803002852903002%280300301500500302500500303500500304500500305注工.表示空房間5001500X 1表示房間已人住

29、、2表示房間已預(yù)訂是否預(yù)玄過房間? 拿,請輸入1否,請輸入2圖4.4入住登記界面如果客人預(yù)定過房間,那么選擇“ 1,然后輸入預(yù)訂房問號如圖 4.5所示.輸入 入住日期和截止日期那么“登記成功如圖 4.6所示.下工滓程設(shè)計(jì)、口 ebug星喈住宿苣理至皖2042803002M52803002B62803003015005003025萌5003035005003045005003055萌5001注;B表示空房間、1表示房間已入住、懸否座式曜房間?拿,請輸關(guān)i,否,廟輸入2;青輸入房間號工101糖輸入入住日期:2表示房間已預(yù)訂圖4.5選擇訂過房間入住登記界面*F:k要程設(shè)計(jì)Debu處真慎住福苣理委統(tǒng).

30、上一2062803003015 被50302500500303500500304500Sfi0305500500注;.表示空房間、1表示房間已入住、2表示房間已預(yù)訂詈否尊交地房間? 士一, 豆請輸入1,否,請榆入2St輸入房間號101請?jiān)內(nèi)巳胱∪掌赨0111223請輸入贊止E期二20211227登記或訪圖4.6訂過房間入住登記界面未預(yù)訂過房間那么選擇“ 2那么會顯示出目前的空房間信息如圖 4.7所示,根據(jù)系 統(tǒng)提示輸入客人的信息那么“登記成功如圖 4.8所示.109 201 202 2032表示房間已預(yù)訂3055眄50注工表示空房間' T表示房間已入住、否,請輸入22空房間有:102

31、103303 304104 IQS 10& 107 108305M 1204 205 29600 05H 54 a3圖4.7選擇未訂過房間入住登記界面 F;深看設(shè)計(jì)1D山ug宴第住塔治理至妮150020211222空房間有101 102g間號:2比6人以下信息并加以核對?日期格式年月日王紫軍h 12m225199005064985C: 155g3474y22圖4.8選擇未訂過房間入住登記輸入信息界面4.3退房結(jié)算模塊實(shí)現(xiàn)4.3.1 退房結(jié)算流程圖V信息存儲道磁盤文件當(dāng)中去圖4.9退房結(jié)算流程圖4.3.2 退房結(jié)算代碼void tuifang()(int a,b;ifstream fin

32、(" 賓館房間信息.txt",ios:in);cout<<"請輸入房號:";cin>>a;int c=0,i=0;fin.seekg(117,ios:beg);/在輸入文件開頭以參照位置為根底移動假設(shè)干字節(jié)(beg=begin)while(i<20) (fin>>hoteli.num>>hoteli.leixing>>hoteli.jiage>>hoteli.kongxian>>hoteli .name>>hoteli.ID>>hoteli.

33、lianxifangshi>>hoteli.yajin>>hoteli.yudingriqi>>hoteli.ruzhushijian>>hoteli.tianshu>>hoteli.jiezhiriqi;if(hoteli.num=a)/查詢客人房間b=i; i+;fin.close();cout<<"房間信息為:"<<endl;cout<<" 姓名: 押金(元): 入住時(shí)間: "<<endl;cout<<setw(6)<<

34、;<<setw(8)<<hotelb.yajin<<setw(20)<<hotelb.ruzhu shijian<<endl;cout<<"(注:日期輸入格式年月日 例如20210211 )"<<endl;cout<<"請輸結(jié)算入日期:"int d;cin>>d;hotelb.jiezhiriqi=d;int fei;cout<<"按小時(shí)/天數(shù)計(jì)費(fèi)(小時(shí)入1,天數(shù)輸入2):"int t;cin&

35、gt;>t;if(t=2)fei=hotelb.yajin-(hotelb.jiezhiriqi-hotelb.ruzhushijian)*(hotelb.jiage/100); / 結(jié)算函數(shù),押金一(結(jié)算時(shí)間 -入住時(shí)間)*價(jià)格elsefei=hotelb.yajin-(hotelb.jiezhiriqi-hotelb.ruzhushijian)*(hotelb.jiage%100);/按小時(shí)計(jì)算if(fei<0) fei=-fei; cout<<"應(yīng)付費(fèi)用為:"<<fei<<"元"<<end

36、l; else cout<<"總消費(fèi)金額為:"<<hotelb.yajin-fei<<" 元"<<endl; cout<<"押金足夠 應(yīng)返還給您:"<<fei<<"元"<<endl;fstream jsxx("結(jié)算信息.txt",ios:out);jsxx<<"消費(fèi)信息為:"<<endl;jsxx<<"姓名:"<<

37、<<endl<<" 押金(元):"<<hotelb.yajin<<endl<<" 入住 時(shí)間:"<<hotelb.ruzhushijian<<endl<<結(jié)算時(shí)間:"<<d<<endl;if(t=2) jsxx<<"計(jì)費(fèi)方式:按天數(shù)計(jì)費(fèi)"<<endl;elsejsxx<<"計(jì)費(fèi)方式:按小時(shí)計(jì)費(fèi)"<<endl;jsxx&

38、lt;<"總消費(fèi)金額為:"<<hotelb.yajin-fei<<" 元"<<endl;jsxx<<"押金足夠 應(yīng)返還給您:"<<fei<<" 元"<<endl; jsxx.close();hotelb.kongxian=0;/房間結(jié)算后初始化房間信息strcpy(,"0");strcpy(hotelb.ID,"0");strcpy(hotelb.lianxifan

39、gshi,"0");hotelb.yudingriqi=0;hotelb.ruzhushijian=0;hotelb.jiezhiriqi=0;hotelb.yajin=0;hotelb.tianshu=0;hotelb.jiezhiriqi=0;fstream xieru("賓館房間信息.txt",ios:out);/生成文件xieru<<"房間號 類型價(jià)格是否空閑 姓名身份證號聯(lián)系方式押金預(yù)定日期入住時(shí)間天數(shù)截止日期"<<endl;for(i=0;i<20;i+)(xieru<<hotel

40、i.num<<''<<hoteli.leixing<<''<<hoteli.jiage<<'<<hoteli.kongxian<<' '<<<<''<<hoteli.ID<<' '<<hoteli.lianxifangshi<<' '<<hoteli.yajin<<''<

41、<hoteli.yudingriqi<<' '<<hoteli.ruzhushijian<<''<<hoteli.tianshu<<' '<<hoteli.jiezhiriqi<<endl;xieru.close();system("pause");4.3.3 退房結(jié)算模塊測試選擇退房功能輸入房問號那么會顯示出客人的根本信息如圖4.10所示;根據(jù)系統(tǒng)提示輸入結(jié)算日期并選擇結(jié)算方式那么“結(jié)算結(jié)束如圖 4.11和圖4.12所示.賬單 信息存入

42、到磁盤文件當(dāng)中去,如圖4.13所示.嚇:沸程設(shè)計(jì)lDwbug賓館住商苣理至舞.exeitttn而3.入髓日治理系統(tǒng)通ttit5.退出感*謝立您稱的請領(lǐng)入選項(xiàng);4造輸入房號:工1居理信息為:一姓名押金?兀?:劉瞭涵 800入住時(shí)間:20211221清輸入結(jié)算日期?格式年月日20210202)圖4.10退房結(jié)算輸入結(jié)算房間號后界面圖¥:、悌程設(shè)計(jì)l*Dubug晨it住悟告理系統(tǒng).*1tttt請麴入您所3 .人隹登記解館治理系統(tǒng)(?2.i工房登記4 .迪席ttItJ退出感*謝*您呆的*使用ttttitttttttttltitttltttttttitttttttttllttttUttttHt

43、tttUititllitttttttitttttttUttit道推入漁項(xiàng):4 請輸屠號:工毗 虜信息為:.姓名劉明涵押金?元?:800入住時(shí)間:20211221請輸入結(jié)算日期?格式年月日20210202)20211235按小時(shí)/天數(shù)計(jì)費(fèi)?天數(shù)輸入1,小時(shí)輸入2):工圖4.11退房結(jié)算輸入日期界面評程設(shè)計(jì)I'Debug'賓館住宦苣理至豌,exe-I明地0111225 安小時(shí)一甲金:8.:4:20211221n it itit 41入r康瘍館治理系統(tǒng)® :嘛黃的功能,入住登記5.退出2 .訂房登記4 .狼房感注謝於您*的“使裳用ttitttttitttnitttottii

44、nttttitttttttttttttttttttttttttttttfittttttttttntttttttttt?入選項(xiàng);4道輸入房號式阻 虜盛息為:押金?元八880入住時(shí)間20211221請輸入結(jié)算日期?格式年月日20210202) 一:計(jì)費(fèi)?天數(shù)輸入L小時(shí)輸入2:1總哨費(fèi)金額樂?20元金足既應(yīng)返還給您:麗圖4.12退房結(jié)算完成界面結(jié)算信,京txt -記事本文件舊編覆(E)格式(O) 查看(V) 幫助(H)息劉元金夠 信費(fèi)名金隹黃. 涯押人結(jié)計(jì)總押圖4.13退房結(jié)算信息文件五、附錄:程序代碼#include<iostream>#include<iomanip> /

45、輸出流限制#include<string>#include<fstream>/輸入輸出文件流using namespace std;void search_message();void dingfangdengji();void ruzhudengji();void tuifang();void all_message();void empty_message();void ruzhixinxi();void dingfangxinxi(); struct hotel /定義結(jié)構(gòu)體int num;char leixing10;int jiage;int kongxian

46、;char name20;char ID20;char lianxifangshi15;int yajin;long yudingriqi;long ruzhushijian;int tianshu;long jiezhiriqi;)hotel20;void Menu_Display()system("cls");cout<<"tt#"<<endl; cout<<"tt# 歡送使用百康賓館治理系統(tǒng) #"<<endlcout<<"tt#請輸入您所需要的功能:#&quo

47、t;<<endl;cout<<"tt# 1.客房查詢cout<<"tt# 3.入住登記cout<<"tt#5.cout<<"tt#感* 謝*2.訂房登記#"<<endl;4.退 房#"<<endl;退出#"<<endl;您*的*使* 用#"<<endl;cout<<"tt#"<<endl; ) void chushihua()(int i3=1,0,1,k=0;fo

48、r(;k<20;k+)hotelk.num=i0*100+i1*10+i2;strcpy(hotelk.ID,"0");hotelk.jiezhiriqi=0;hotelk.kongxian=0;strcpy(hotelk.lianxifangshi,"0");strcpy(,"0");hotelk.ruzhushijian=0;hotelk.tianshu=0;hotelk.yudingriqi=0;switch(i0)單人間");break; 雙人間");break; 套房"

49、;);break;case 1:hotelk.jiage=17020;strcpy(hotelk.leixing," case 2:hotelk.jiage=28030;strcpy(hotelk.leixing," case 3:hotelk.jiage=50050;strcpy(hotelk.leixing," if(k=8)i0+,i2=0;if(k=14)i0+,i2=0;i2+;)fstream xieru(" 賓館房間信息.txt",ios:out);xieru<<"房間號 類型價(jià)格是否空閑姓名身份證號聯(lián)系方式

50、押金預(yù)定日期入住時(shí)間 天數(shù)截止日期"<<endl;for(int x=0;x<20;x+)xieru<<hotelx.num<<''<<hotelx.leixing<<''<<hotelx.jiage<<''<<hotelx.kongxian<<' '<<<<''<<hotelx.ID<<' '<<

51、;hotelx.lianxifangshi<<' '<<hotelx.yajin<<''<<hotelx.yudingriqi<<' '<<hotelx.ruzhushijian<<''<<hotelx.tianshu<<' '<<hotelx.jiezhiriqi<<endl;)xieru.close();)void main()int p=0;cout<<"是

52、否要初始化房間信息?"cout<<"(是請輸入1,否請輸入0)"<<endl;cin>>p;if(p=1)chushihua();int chose;Menu_Display();cout<<"請輸入選項(xiàng):"cin>>chose;while(chose!=0)switch(chose)用switch語句判斷選擇菜單的功能case 1:search_message();break; / 客房查詢case 2:dingfangdengji();break;/ 訂房間case 3:ruzhu

53、dengji();break;/入住房間case 4:tuifang();break;/ 退房case 5:exit(0);default:cout<<"輸入錯(cuò)誤,請重新輸入"<<endl; 提示錯(cuò)誤命令)cout<<"tt#"<<endl;cout<<"tt# 歡送使用百康賓館治理系統(tǒng) #"<<endlcout<<"tt#請輸入您所需要的功能:#"<<endl;cout<<"tt# 1.客房查詢c

54、out<<"tt# 3.入住登記cout<<"tt#5.cout<<"tt#感* 謝*2.訂房登記#"<<endl;4.退 房#"<<endl;退出#"<<endl;您*的*使* 用#"<<endl;cout<<"tt#"<<endl;cout<<"請輸入選項(xiàng):"cin>>chose;while(chose=0)cout<<"輸入錯(cuò)誤

55、,按任意鍵退出程序:"<<endl;exit(0);) void ruzhudengji() int a,b=0;string name;ifstream liulan(" 賓館房間信息.txt",ios:in); 定義輸入文件流對象,以輸入方式打開磁盤文件旅信if(!liulan)/判斷文件是否翻開成功cerr<<"文件不能讀."<<endl;return;)elseliulan.seekg(117,ios:beg);/ 在輸入文件開頭以參照位置為根底移動假設(shè)干字節(jié) (beg=begin)int i=0;

56、/存放空閑房間的號cout<<" 房間號 類型 價(jià)格(元/天) 價(jià)格(元/小時(shí)) 空閑 "<<endl;while (i<20)liulan>>hoteli.num>>hoteli.leixing>>hoteli.jiage>>hoteli.kongxian>>>>hoteli.ID>>hoteli.lianxifangshi>>hoteli.yajin>>hoteli.yudingriqi>>hot e

57、li.ruzhushijian>>hoteli.tianshu>>hoteli.jiezhiriqi;cout<<setw(4)<<hoteli.num<<setw(8)<<hoteli.leixing<<setw(9)<<hoteli.jiage /100<<setw(14)<<hoteli.jiage%100<<setw(13)<<hoteli.kongxian; /輸出所有房間信息i+,cout<<endl; liulan.close

58、(); /關(guān)閉文件cout<<"(注:0表小空房間、1表小房間已入住、2表小房間已預(yù)訂)"<<endl;cout<<"是否預(yù)訂過房間?"<<endl;cout<<"是,請輸入1,否,請輸入 2"<<endl; cin>>a;if(a=1) cout<<"請輸入房間號:"<<endl;cin>>b;for(i=0;i<20;i+) if(hoteli.num=b) if(hoteli.yudi

59、ngriqi!=0) cout<<"請輸入入住日期:"; cin>>hoteli.ruzhushijian; cout<<"請輸入截止日期:"; cin>>hoteli.jiezhiriqi; hoteli.yudingriqi=0; else cout<<"該房沒有被預(yù)訂過"<<endl; system("pause"); else cout<<"空房間有:"<<endl;for(int k=0;k

60、<20;k+)(if(hotelk.kongxian=0)cout<<hotelk.num<<"")cout<<endl;cout<<"請輸入房間號:";cin>>b;for(i=0;i<20;i+) if(hoteli.num=b)(cout<<"請依次輸入以下信息并加以核對 (日期格式:年月 日 19920503 )"<<endl;cout<<"姓 名:"cin>>;co

61、ut<<"身份證號:"cin>>hoteli.ID;cout<<"聯(lián)系方式:"cin>>hoteli.lianxifangshi;cout<<"押金:"; cin>>hoteli.yajin;cout<<"天 數(shù):";cin>>hoteli.tianshu;cout<<"入住日期:" cin>>hoteli.ruzhushijian;hoteli.kongxian=2;ofst

62、ream xieru("賓館房間信息.txt",ios:out); /寫回文件押金xieru<<"房間號類型 價(jià)格是否空閑 姓名身份證號聯(lián)系方式預(yù)定日期入住時(shí)間天數(shù)截止日期"<<endl;for(i=0;i<20;i+)xieru<<hoteli.num<<''<<hoteli.leixing<<''<<hoteli.jiage<<'<<hoteli.kongxian<<' '

63、;<<<<''<<hoteli.ID<<' '<<hoteli.lianxifangshi<<''<<hoteli.yajin<<'<<hoteli.yudingriqi<<' '<<hoteli.ruzhushijian<<''<<hoteli.tianshu<<' '<<hoteli.ji

64、ezhiriqi<<endl;xieru.close();cout<<"登記成功"<<endl;void tuifang()(int a,b;ifstream fin("賓館房間信息.txt",ios:in);cout<<"請輸入房號:";cin>>a;int c=0,i=0;fin.seekg(117,ios:beg);/在輸入文件開頭以參照位置為根底移動假設(shè)干字節(jié)(beg=begin)while(i<20) (fin>>hoteli.num>>hoteli.leixing>

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論