C課程設(shè)計(jì)_酒店管理系統(tǒng)_第1頁(yè)
C課程設(shè)計(jì)_酒店管理系統(tǒng)_第2頁(yè)
C課程設(shè)計(jì)_酒店管理系統(tǒng)_第3頁(yè)
C課程設(shè)計(jì)_酒店管理系統(tǒng)_第4頁(yè)
C課程設(shè)計(jì)_酒店管理系統(tǒng)_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余21頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、1 .課題簡(jiǎn)介032 .設(shè)計(jì)方案043 .具體設(shè)計(jì)及截屏圖054 .關(guān)鍵代碼分析105 .測(cè)試156 .課題總結(jié)與體會(huì)177 .參考文獻(xiàn)188 .源代碼191 .課題簡(jiǎn)介客房管理系統(tǒng)是根據(jù)某酒店對(duì)客房管理的實(shí)際情況進(jìn)行編寫(xiě)的,主要目的是為了方便酒店對(duì)客房的實(shí)際情況進(jìn)行集中的查詢與管理工作,以提高整個(gè)酒店的工作。經(jīng)過(guò)電腦及生活中的調(diào)查研究,根據(jù)客人的經(jīng)濟(jì)水平和生活理念,客房的類(lèi)型已趨向于多樣化,有標(biāo)準(zhǔn)房,單人房,VIP問(wèn),甚至總統(tǒng)套房。而初步設(shè)定通過(guò)客房的編號(hào)、類(lèi)型、價(jià)格來(lái)定位一個(gè)客房的管理系統(tǒng)??头渴且粋€(gè)對(duì)外服務(wù)的內(nèi)容,為了客人的住宿要求,所以系統(tǒng)需要實(shí)現(xiàn)客房信息的錄入、修改和刪除功能??腿藢?duì)

2、剩余客房需要進(jìn)行選擇,系統(tǒng)必須實(shí)現(xiàn)相應(yīng)的查詢、排序和輸出功能,使客人擇優(yōu)而居。本次課程設(shè)計(jì)需要實(shí)現(xiàn)的是一一客房管理系統(tǒng)的鏈表實(shí)現(xiàn)。主要實(shí)現(xiàn)的功能包括:客房信息的錄入、修改、刪除、剩余客房信息查詢、排序、輸出??头啃畔⒖蓪?xiě)入文件,也可從文件中讀取??头啃畔⑸婕暗臄?shù)據(jù)有客房編號(hào)、客房類(lèi)型、定房日期、客房?jī)?nèi)容(設(shè)施)、定房有效期等。2 .設(shè)計(jì)方案按照需求分析所得,客房信息系統(tǒng)有以下幾個(gè)功能模塊:1.添加錄入信息模塊;編寫(xiě)指針摸板,定義臨時(shí)的客房間數(shù),包括其各項(xiàng)類(lèi)的成員,編號(hào),類(lèi)型,定房日期,價(jià)格,客房?jī)?nèi)容,入住天數(shù)。3 .修改客房信息模塊;讀取保存的客房信息數(shù)據(jù),根據(jù)客房編號(hào)查找所需修改的客房信息,

3、然后根據(jù)具體所需,修改成員參數(shù),并保存。4 .刪除客房信息模塊;從保存中的文件中讀取信息,刪除需要?jiǎng)h除的信息,完善現(xiàn)在的客房運(yùn)作。5,查詢剩余客房函數(shù);分按編號(hào)、類(lèi)型、價(jià)格查詢,這樣可以更具有人性化來(lái)選擇所剩余的客房,從而進(jìn)行日常安排。6 .排序剩余客房模塊;根據(jù)具體所需排序,可以是編號(hào)、價(jià)格或者類(lèi)型,本系統(tǒng)中根據(jù)的是客房入住的天數(shù)來(lái)排序。7 .輸出剩余客房函數(shù);輸出根據(jù)系統(tǒng)所需排序后的客房信息,本系統(tǒng)中是根據(jù)了客人入住的有效期即天數(shù)來(lái)及時(shí)了解空出的房間。由上述需求分析可得,系統(tǒng)的功能模塊圖如圖1所示??头康男畔⒐芾韴D12.具體設(shè)計(jì)及截屏圖1、類(lèi)的設(shè)計(jì)根據(jù)上述需求分析,有客房類(lèi)和鏈表類(lèi)。(1)

4、客房類(lèi)系統(tǒng)研究客房cGuestroom類(lèi)中成員:IDSIZE是客房編號(hào),TypeSIZE是客房類(lèi)型,BookSIZE是定房日期,PriceSIZE是每間客房的價(jià)格,StayTimeSIZE是定房的有效期,F(xiàn)unctionSIZE是客房的主要內(nèi)容(如浴室、衛(wèi)生間、網(wǎng)線等設(shè)施),標(biāo)志flag和構(gòu)造函數(shù)cGuestroom()??头款?lèi)的UMLJEI如(圖2)所示:classcGuestroom(2)鏈表類(lèi)在tList類(lèi)中,行+MBUFS陡:摘r/,貓連表Create(),判斷鏈表是否為空的函數(shù)Empty()cons墉尾部插入一個(gè)元素的函數(shù)Insert(constTe),返回第i個(gè)節(jié)點(diǎn)的函數(shù)GetcN

5、ode(nt深,在鏈表中查詢某個(gè)值的函數(shù)boolFind(constTe),析構(gòu)函數(shù)tList(),頭節(jié)+蟒eBUFSiZEUML翻里3)所示:2.界面設(shè)計(jì):主界面的設(shè)*主界面中顯示然房管tList人,客房信息的保存,客房信息的修改,客房信息的刪除丁涮余客房的查詢,剩余客房的排序,剩余客房的輸出,客房信息管王!系統(tǒng)如圖4舞ate期fid界面+Empty()const:bool+Insert(conste:T):void(2)分界面:客房信息的錄入的設(shè)計(jì)提示輸入客房編號(hào),客房類(lèi)型,客人定房日期,客房?jī)r(jià)格,客房中的主要內(nèi)容,客房定房的有效期??头啃畔浫肴鐖D5所示。圖5錄入客房信息的分界面(3)分

6、界面:客房信息的保存的設(shè)計(jì)針對(duì)第一步客房信息的輸入及以后信息的修改、刪除做一個(gè)文件保存??头啃畔⒈4嫒鐖D6所示。圖6保存客房信息的分界面(4)分界面:客房信息的修改的設(shè)計(jì)提示根據(jù)編號(hào)進(jìn)行客房信息修改,輸入要修改的內(nèi)容,如不修改的項(xiàng)目就遠(yuǎn)洋輸出??头啃畔⑿薷慕缑嫒鐖D7所示。圖7修改客房信息的分界面(5)分界面:客房信息的刪除的設(shè)計(jì)提示進(jìn)入刪除截面,根據(jù)客房編號(hào)查找所需刪除的客房信息。客房信息的刪除界面如圖8所示。圖8刪除客房信息的分界面(6)分界面:剩余客房信息的查詢的設(shè)計(jì)在保存完所修改或刪除的客房信息,查詢剩余的客房信息,按提示進(jìn)入剩余客房查詢界面,有按編號(hào)、類(lèi)型、價(jià)格查詢,根據(jù)擁護(hù)自主選擇。

7、查詢剩余客房的信息界面如圖9所示。圖9查詢客房信息的分界面(7)剩余客房信息的排序的設(shè)計(jì)按提示進(jìn)行剩余客房的排序,本系統(tǒng)中是以客人的入住天數(shù)排序,顯示屏幕如圖10所示。(8)分界面:剩余客房信息的輸出的設(shè)計(jì)在排序完后的剩余客房中,輸出所有客房的信息,以檢驗(yàn)客房的經(jīng)營(yíng)情況。剩余客房信息輸出界面如圖10所示。圖10輸出剩余客房的信息4. 關(guān)鍵代碼分析(1)系統(tǒng)的登錄在主函數(shù)中,輸出客房信息系統(tǒng)的各功能提示。選擇需要執(zhí)行功能的序號(hào),由switch判斷和選擇所需要執(zhí)行的功能。選擇1:執(zhí)行客房信息的錄入;選擇2:執(zhí)行保存客房的信息;選擇3:執(zhí)行教工基本信息的保存;選擇4:執(zhí)行教工基本信息的刪除;選擇5:

8、執(zhí)行教工工資按從高到低排序;選擇6:執(zhí)行教工基本信息的修改;選擇7:執(zhí)行教工基本信息的查詢;選擇8:退出;主函數(shù):intmain()tListtListMedic;/創(chuàng)建鏈表tListMedic.Create();ReadData(&tListMedic);while(1)coutnn客房管理系統(tǒng)nn;coutnn;cout1.客房信息的錄入nn;cout2:客房信息保存nn;cout3.客房信息的修改nn;cout4.客房信息的刪除nn;cout5.剩余客房信息的查詢nn;cout6.剩余客房信息的排序nn;cout7.剩余客房信息的輸出nn;cout8.退出系統(tǒng)nn;coutchoose;

9、switch(choose)/case1:AddtheGuestroom(&tListMedic);break;/用戶選擇輸入客房信息case2:SaveData(&tListMedic);break;/case3:ModifytheGuestroom(&tListMedic);break;/case4:DeletetheGuestroom(&tListMedic);break;/case5:FindtheremainGuestroom(&tListMedic);break;/客房信息信息保存修改客房信息刪除客房信息查詢剩余客房信在讀取數(shù)據(jù)庫(kù)中,可以從以有的文件中讀取數(shù)據(jù)到程序中,避免了程序的

10、重復(fù)輸入case6:RanktheremainGuestroom(&tListMedic);break;/case7:OutputtheremainGuestroom(&tListMedic);break;/case8:exit(0);/default:break;return0;數(shù)據(jù),有利于后面的信息修改、刪除等功能。讀取數(shù)據(jù)庫(kù):voidReadData(tList*tListMedic)/charbufBUFSIZE;ifstreamifile(Guestroom.txt,ios_base:in);if(!ifile)cerr讀取時(shí)打開(kāi)文件出錯(cuò)!Insert(Guestroom);cout

11、讀取數(shù)據(jù)成功!nn;ifile.close();/return;(2)信息的添加客房信息的錄入,創(chuàng)建cGuestroom類(lèi)和tempGuestroom對(duì)象,調(diào)用構(gòu)造函數(shù),輸入客房的房間編號(hào)、房間類(lèi)型、定房日期、房間價(jià)格、房間內(nèi)容及個(gè)人的入住有效期,通過(guò)Insert函數(shù)實(shí)現(xiàn)。voidAddtheGuestroom(tList*tListMedic)/輸入客房函數(shù)cGuestroomtempGuestroom;cout下面開(kāi)始添加客房信息n;couttempGuestroom.ID;couttempGuestroom.Type;couttempGuestroom.Book;couttempGues

12、troom.Price;couttempGuestroom.Function;couttempGuestroom.StayTime;tempGuestroom.flag=true;/讀入入住有效期tListMedic-Insert(tempGuestroom);cout添加成功!n;system(pause);system(cls);(3)信息的刪除刪除客房信息,按要求提示輸入要?jiǎng)h除客房的房間編號(hào),定義一個(gè)指向鏈表第一個(gè)節(jié)點(diǎn)的指針p。如果指針創(chuàng)建成功,開(kāi)始用while和if語(yǔ)句實(shí)現(xiàn)p指向的節(jié)點(diǎn)的客房編號(hào)與存在的客房編號(hào)的比較。如果相同,輸出該客房的信息并刪除;如果沒(méi)有相同的,提示沒(méi)有所查詢的房

13、間。voidDeletetheGuestroom(tList*tListMedic)/刪除客房信息charidBUFSIZE;coutid;/讀取客房編號(hào)boolflag=false;intcount=0;cNode*p;p=tListMedic-head-next;while(p)if(strcmp(p-data.ID,id)=0&p-data.flag)count+;flag=true;break;p=p-next;if(flag=false)cout對(duì)不起,你所查找的客房延長(zhǎng)了住房日期!n;/如果不能刪else/如果能刪count-;cout找到了,該客房的原始信息是:n;coutnn客

14、房編號(hào):data).IDt客房類(lèi)型:data).Typentt定房日期:data).Bookntt價(jià)格:data).Price;coutntt客房的主要內(nèi)容:data).Functionntt入住有效期:data).StayTime;coutdata).flag=false;cout該客房的信息刪除成功!n;coutendl;system(pause);system(cls);return;(4)信息的修改按提示輸入要修改的客房的客房編號(hào),定義一個(gè)指向鏈表第一個(gè)節(jié)點(diǎn)的指針p。如果指針創(chuàng)建成功,開(kāi)始用while和if語(yǔ)句實(shí)現(xiàn)p指向的節(jié)點(diǎn)的客房編號(hào)與存在的客房編號(hào)的比較。如果相同,提示輸入房間的各

15、個(gè)信息;如果沒(méi)有相同,提示沒(méi)有所查詢的客房。voidModifytheGuestroom(tList*tListMedic)/修改客房信息charidBUFSIZE;coutid;/讀取客房編號(hào)boolflag=false;cNode*p;p=tListMedic-head-next;while(p)if(strcmp(p-data.ID,id)=0&p-data.flag)flag=true;break;p=p-next;if(flag=true)cout找到了,該客房的原始信息是:n;coutnn客房編號(hào):data).IDt客房類(lèi)型:data).Typentt定房日期:data).Book

16、ntt價(jià)格:data).Price;coutntt客房的主要內(nèi)容:data).Functionntt入住有效期:data).StayTime;coutn下面開(kāi)始修改該客房的信息:cGuestroomtempGuestroom;couttempGuestroom.ID;couttempGuestroom.Type;couttempGuestroom.Book;couttempGuestroom.Price;couttempGuestroom.Function;容couttempGuestroom.StayTime;tempGuestroom.flag=true;p-data=tempGuestr

17、oom;cout修改成功!;coutendl;system(pause);system(cls);return;/定義臨時(shí)客房/讀入客房編號(hào)/讀入客房類(lèi)型/讀入定房日期/讀入價(jià)格/讀入客房的主要內(nèi)/讀入入住有效期n;5. 測(cè)試程序測(cè)試是將編制的程序投入實(shí)際運(yùn)行前,用手工或編譯程序等方法進(jìn)行測(cè)試,修正語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤的過(guò)程。原程序:voidRanktheremainGuestroom(tList*tListMedic)/排序剩余客房cNode*p,*q;cGuestroomremainGuestroom;for(p=tListMedic-head-next;p!=NULL;p=p-next)f

18、or(q=p;q!=NULL;q=q-next)if(p-data.Priceq-data.Price)remainGuestroom.flag=p-data.flag;strcpy(remainGuestroom.ID,p-data.ID);strcpy(remainGuestroom.Type,p-data.Type);strcpy(remainGuestroom.Book,p-data.Book);strcpy(remainGuestroom.Price,p-data.Price);strcpy(remainGuestroom.Function,p-data.Function);rema

19、inGuestroom.StayTime=p-data.StayTime;p-data.flag=q-data.flag;strcpy(p-data.Function,q-data.Function);strcpy(p-data.ID,q-data.ID);strcpy(p-data.Type,q-data.Type);strcpy(p-data.Book,q-data.Book);p-data.StayTime=q-data.StayTime;q-data.flag=remainGuestroom.flag;strcpy(q-data.Function,remainGuestroom.Fun

20、ction);strcpy(q-data.ID,remainGuestroom.ID);strcpy(q-data.Type,remainGuestroom.Type);strcpy(q-data.Book,remainGuestroom.Book);q-data.StayTime=remainGuestroom.StayTime;Debug調(diào)試,發(fā)排序剩余客房編譯成功后開(kāi)始運(yùn)行,信息錄入后,不能在文檔中正確排序輸出,經(jīng)現(xiàn),以客人的入住天數(shù)排序來(lái)及時(shí)調(diào)出空余客房為最佳選擇。voidRanktheremainGuestroom(tList*tListMedic)/cNode*p,*q;cGues

21、troomremainGuestroom;for(p=tListMedic-head-next;p!=NULL;p=p-next)for(q=p;q!=NULL;q=q-next)if(p-data.StayTimeq-data.StayTime)remainGuestroom.flag=p-data.flag;strcpy(remainGuestroom.ID,p-data.ID);strcpy(remainGuestroom.Type,p-data.Type);strcpy(remainGuestroom.Book,p-data.Book);strcpy(remainGuestroom.P

22、rice,p-data.Price);strcpy(remainGuestroom.Function,p-data.Function);remainGuestroom.StayTime=p-data.StayTime;p-data.flag=q-data.flag;strcpy(p-data.Function,q-data.Function);strcpy(p-data.ID,q-data.ID);strcpy(p-data.Type,q-data.Type);strcpy(p-data.Book,q-data.Book);p-data.StayTime=q-data.StayTime;q-d

23、ata.flag=remainGuestroom.flag;strcpy(q-data.Function,remainGuestroom.Function);strcpy(q-data.ID,remainGuestroom.ID);strcpy(q-data.Type,remainGuestroom.Type);strcpy(q-data.Book,remainGuestroom.Book);q-data.StayTime=remainGuestroom.StayTime;6. 課題總結(jié)與體會(huì)本次的C+解程設(shè)計(jì)雖然只是短短的兩個(gè)星期,但是卻令我體會(huì)很多,也學(xué)到很多東西。利用C+*設(shè)計(jì)客房管理,

24、使我加強(qiáng)了對(duì)C+勺認(rèn)識(shí),也對(duì)現(xiàn)代客房的基本運(yùn)作管理有了初步了解。在這次課程設(shè)計(jì)中,我還懂得了程序開(kāi)發(fā)中的一些比較重要的步驟并且學(xué)會(huì)了一些沒(méi)有接觸過(guò)的知識(shí),比如需求分析、類(lèi)的設(shè)計(jì)以及類(lèi)與類(lèi)之間的關(guān)系,UML3形的表示方法等。面向?qū)ο蟪绦蛟O(shè)計(jì)作為一門(mén)軟件設(shè)計(jì)的課程,具有極強(qiáng)的實(shí)踐性,使我加強(qiáng)了靈活應(yīng)用理論知識(shí)的能力及面向?qū)ο蟪绦蛟O(shè)計(jì)技能。C+語(yǔ)言相對(duì)于C語(yǔ)言來(lái)更具有優(yōu)越性,它不僅兼容C,還有一個(gè)非常重要的特點(diǎn)就是面向?qū)ο?具體來(lái)講就是類(lèi)),另外模板技術(shù)的頻繁引用,也使整個(gè)程序看起來(lái)更清晰,更有條理化,所以,對(duì)模塊的掌握,在C+惇習(xí)中是非常重要的。在本次的應(yīng)用程序的設(shè)計(jì)和創(chuàng)建過(guò)程中,我遇到了許多問(wèn)題

25、,有些是自己沒(méi)有在教科書(shū)中學(xué)過(guò)的,但是卻是系統(tǒng)所必須的,我通過(guò)在網(wǎng)上查找資料、查找書(shū)本、請(qǐng)教老師,一步步的把這些問(wèn)題搞懂了,所以,課程設(shè)計(jì)也培養(yǎng)了我們探索實(shí)踐的能力??傊矣X(jué)得,我們學(xué)習(xí)和掌握的知識(shí),只有通過(guò)實(shí)際應(yīng)用,才能真正的理解和掌握,才能更好的去應(yīng)用。以前上C+儲(chǔ)程,只是零散被動(dòng)地接受知識(shí),而不是主動(dòng)地去吸收滲透,而此次的課程設(shè)計(jì)卻讓我對(duì)編程產(chǎn)生了興趣,習(xí)慣獨(dú)立自主地完成任務(wù),在困難中尋求幫助,加強(qiáng)和同學(xué)間的互幫互助,相信自己會(huì)在以后的學(xué)習(xí)和工作更加有經(jīng)驗(yàn)。通過(guò)課程設(shè)計(jì),我既復(fù)習(xí)了以前的舊知識(shí),又學(xué)到了一些新的知識(shí);設(shè)計(jì)增強(qiáng)了我們用所學(xué)知識(shí)去解決具體問(wèn)題的能力,進(jìn)一步培養(yǎng)了我們獨(dú)立思考

26、問(wèn)題和解決問(wèn)題的能力。7. 參考文獻(xiàn)11陳維興,林小茶.C+面向?qū)ο蟪绦蛟O(shè)計(jì)教程.北京.清華大學(xué)出版社2010,10【2】譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì).北京:清華大學(xué)出版社.2010,5【3】8. 源代碼/客房管理系統(tǒng)主要實(shí)現(xiàn)的功能包括:客房信息的錄入、修改、刪除、剩余客房信息查詢、排序、輸出??头啃畔⒖蓪?xiě)入文件,也可從文件中讀取。/*系統(tǒng)的登錄信息的添加信息的刪除信息的修改*/#include/指示編譯器將文件iostream中的代碼嵌入到該程序中該指令所在的地方usingnamespacestd;#include/包含文件流頭文件#defineBUFSIZE50classcGuestroom;v

27、oidFindTheGuestroom();/voidFindTheGuestroomById();/voidFindTheGuestroomByType();/voidFindTheGuestroomByPrice();/voidDeleteTheGuestroom();/voidAddTheGuestroom();/voidModifyTheGuestroom();/template/template:classcNode/public:Tdata;cNode*next;templateclasstListpublic:/tList();voidCreate();/boolEmpty()c

28、onst;/voidInsert(constTe);/cNode*GetcNode(inti);boolFind(constTe);/tList();/cNode*head;/;templatetList:tList()/head=newcNode;head-next=NULL;查找客房按照編號(hào)找客房按照類(lèi)型找客房按照價(jià)格找客房刪除客房客房添加修改客房模板,樣板節(jié)點(diǎn)定義成員函數(shù)創(chuàng)建鏈表判斷鏈表是否為空從尾部插入一個(gè)元素/返回第i個(gè)節(jié)點(diǎn)在鏈表中查找某個(gè)值銷(xiāo)毀鏈表,析構(gòu)頭節(jié)點(diǎn)類(lèi)的成員函數(shù)的實(shí)現(xiàn)templatevoidtList:Create()cNode*p;p=head;p-next=NULL;

29、templatebooltList:Empty()constreturn(head-next=NULL);templatevoidtList:Insert(constTe)/insertcNode*p,*q;p=head;q=newcNode;q-data=e;while(p-next)p=p-next;p-next=q;q-next=NULL;templatecNode*tList:GetcNode(inti)/intk=0;cNode*p;p=head;while(p&knext;+k;returnp;templatebooltList:Find(constTe)/boolflag=fal

30、se;cNode*p;p=head-next;while(p)if(p-data=e)flag=true;:插入在鏈表中查找某個(gè)值返回第i個(gè)節(jié)點(diǎn)break;p=p-next;returnflag;templatetList:tList()cNode*p;while(head)p=head-next;deletehead;head=p;classcGuestroompublic:charIDBUFSIZE;/客房編號(hào)charTypeBUFSIZE;/客房類(lèi)型charBookBUFSIZE;/提前定房日期charPriceBUFSIZE;/客房?jī)r(jià)格charFunctionBUFSIZE;/客房主要

31、內(nèi)容intStayTime;/入住天數(shù)有效期boolflag;/標(biāo)志cGuestroom()/構(gòu)造函數(shù)初始化memset(ID,0,BUFSIZE);memset(Type,0,BUFSIZE);memset(Book,0,BUFSIZE);memset(Function,0,BUFSIZE);memset(Price,0,BUFSIZE);StayTime=0.0;flag=false;/memset:把char類(lèi)型轉(zhuǎn)換成ASCII值;voidReadData(tList*tListGue)/讀取數(shù)據(jù)庫(kù)charbufBUFSIZE;ifstreamifile(Guestroom.txt,io

32、s_base:in);/創(chuàng)建一個(gè)輸出文件流對(duì)象if(!ifile)cerr讀取時(shí)打開(kāi)文件出錯(cuò)!Insert(Guestroom);cout讀取數(shù)據(jù)成功!nn;ifile.close();/關(guān)閉文件return;voidAddtheGuestroom(tList*tListGue)/輸入客房函數(shù)cGuestroomtempGuestroom;/定義臨時(shí)客房cout下面開(kāi)始添加客房信息n;couttempGuestroom.ID;/couttempGuestroom.Type;/couttempGuestroom.Book;/couttempGuestroom.Price;/couttempGue

33、stroom.Function;/couttempGuestroom.StayTime;/tempGuestroom.flag=true;tListGue-Insert(tempGuestroom);cout添加成功!n;讀入客房編號(hào)讀入客房類(lèi)型讀入定房日期讀入價(jià)格讀入主要內(nèi)容讀入入住有效期system(pause);system(cls);/pause:停頓,終止保存數(shù)據(jù)/創(chuàng)建一個(gè)輸入文件流對(duì)象從內(nèi)存中讀取數(shù)據(jù),存到外修改客房信息讀取客房編號(hào)voidSaveData(tList*tListGue)/inti=0;ofstreamofile(Guestroom.txt,ios_base:out

34、);if(!ofile)cerr保存時(shí)打開(kāi)文件出錯(cuò)!endl;cNode*p;p=tListGue-head-next;while(p)/盤(pán)if(p-data.flag)ofilen;ofiledata).IDn;ofiledata).Typen;ofiledata).Bookn;ofiledata).Pricen;ofiledata).Functionn;ofiledata).StayTimenext;cout保存數(shù)據(jù)成功!n;ofile.close();system(pause);system(cls);return;voidModifytheGuestroom(tList*tListGu

35、e)/charidBUFSIZE;coutid;/boolflag=false;cNode*p;p=tListGue-head-next;while(p)if(strcmp(p-data.ID,id)=0&p-data.flag)flag=true;break;p=p-next;if(flag=true)/顯示屏幕cout找到了,該客房的原始信息是:n;coutnn客房編號(hào):data).IDt客房類(lèi)型:data).Typentt定房日期:data).Bookntt價(jià)格:data).Price;coutntt客房的主要內(nèi)容:data).Functionntt入住有效期:data).StayTim

36、e;coutn下面開(kāi)始修改該客房的信息:n;cGuestroomtempGuestroom;/couttempGuestroom.ID;/couttempGuestroom.Type;/couttempGuestroom.Book;/couttempGuestroom.Price;/couttempGuestroom.Function;/couttempGuestroom.StayTime;/讀入入住有效期tempGuestroom.flag=true;p-data=tempGuestroom;cout修改成功!;coutendl;system(pause);system(cls);retur

37、n;voidDeletetheGuestroom(tList*tListGue)/刪除客房信息charidBUFSIZE;coutid;/讀取客房編號(hào)boolflag=false;intcount=0;cNode*p;p=tListGue-head-next;while(p)if(strcmp(p-data.ID,id)=0&p-data.flag)count+;flag=true;break;p=p-next;if(flag=false)cout對(duì)不起,你所查找的客房延長(zhǎng)了住房日期!n;/如果不能刪else/如果能刪count-;cout找到了,該客房的原始信息是:n;coutnn客房編號(hào):

38、data).IDt客房類(lèi)型:data).Typentt定房日期:data).Bookntt價(jià)格:data).Price;coutntt客房的主要內(nèi)容:data).Functionntt入住有效期:data).StayTime;coutdata).flag=false;cout該客房的信息刪除成功!n;coutendl;system(pause);system(cls);return;voidFindtheremainGuestroomById(tList*tListGue)/根據(jù)客房編號(hào)查找charidBUFSIZE;coutid;/讀取客房編號(hào)boolflag=false;cNode*p;p

39、=tListGue-head-next;while(p)if(strcmp(p-data.ID,id)=0&p-data.flag)flag=true;break;p=p-next;if(flag=false)cout對(duì)不起,沒(méi)有該標(biāo)號(hào)的客房!n;/如果找不到else/如果找到了coutn找到了,該客房的信息是:n;coutnn客房編號(hào):data).IDt客房類(lèi)型:data).Typentt定房日期:data).Bookntt價(jià)格:data).Price;coutntt主要內(nèi)容:data).Functionntt入住有效期:data).StayTime;coutendl;system(paus

40、e);system(cls);/清屏return;voidFindtheremainGuestroomByType(tList*tListGue)/根據(jù)客房類(lèi)型查找客房chartypeBUFSIZE;couttype;/讀取客房類(lèi)型boolflag=false;cNode*p;p=tListGue-head-next;while(p)if(strcmp(p-data.Type,type)=0&p-data.flag)flag=true;break;p=p-next;if(flag=false)cout對(duì)不起,沒(méi)有該類(lèi)型的客房!n;/如果滿了else/如果找到了coutn找到了,該客房信息是:n

41、;coutnn客房編號(hào):data).IDt客房類(lèi)型:data).Typentt定房日期:data).Bookntt價(jià)格:data).Price;coutntt客房的主要內(nèi)容:data).Functionntt入住有效期:data).StayTime;coutendl;system(pause);system(cls);return;voidFindtheremainGuestroomByPrice(tList*tListGue)/根據(jù)價(jià)格查找客房charpriceBUFSIZE;coutprice;/讀取價(jià)格boolflag=false;cNode*p;p=tListGue-head-next;while(p)if(strcmp(p-data.Price,price)=0&p-data.flag)flag=true;coutnn客房編號(hào):data).IDt客房類(lèi)型:data).Typentt定房日期:data).Bookntt價(jià)格:data).Price;coutntt客房的主要內(nèi)容:data).Functionntt入住有效期:data).StayTime;p=p-next;對(duì)不起,沒(méi)有你所要求價(jià)格的客房!n;/如果if(flag=false)c

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論