版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求1設(shè)計(jì)內(nèi)容:酒店管理系統(tǒng) 問題描述:建立酒店客房管理信息系統(tǒng),采用計(jì)算機(jī)對(duì)客房信息進(jìn)行管理,進(jìn)一步提高酒店的經(jīng)濟(jì)效益和現(xiàn)代化水平。幫助酒店工作人員提高工作效率,實(shí)現(xiàn)客房管理工作流程的系統(tǒng)化、規(guī)范化和自動(dòng)化。功能要求:(1)本系統(tǒng)包括數(shù)據(jù)錄入,數(shù)據(jù)修改,數(shù)據(jù)添加,數(shù)據(jù)查詢,數(shù)據(jù)備份和報(bào)表生成。(2)數(shù)據(jù)信息包括客房號(hào),客房類型,客房?jī)r(jià)格,折扣情況,客房狀態(tài),入住客人信息(姓名,性別,身份證號(hào),入住時(shí)間,預(yù)計(jì)入住期等),客房負(fù)責(zé)人等。(3)查詢應(yīng)可以提供多種查詢方式,如按房號(hào)查詢,按月份查詢,按價(jià)格查詢,按客房狀態(tài)查詢等。(4)客房入住日?qǐng)?bào)表,客房入住月表等。問題的解決方案:
2、根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: (1)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);(2)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系; (3)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; (4)完成類層次中各個(gè)類的描述; (5)完成類中各個(gè)成員函數(shù)的定義; (6)完成系統(tǒng)的應(yīng)用模塊; (7)功能調(diào)試;(8)完成系統(tǒng)總結(jié)報(bào)告。2設(shè)計(jì)要求:l 課程設(shè)計(jì)報(bào)告正文內(nèi)容(包括系統(tǒng)設(shè)計(jì)要求,設(shè)計(jì)思路,系統(tǒng)功能模塊圖,系統(tǒng)流程圖,類的層次圖(包括類成員列表),調(diào)試過程,關(guān)鍵程序代碼,總結(jié),參考書目等)。(一)需求分析系統(tǒng)設(shè)計(jì)目的與意義系統(tǒng)功能需求(系統(tǒng)流程圖);輸入輸出的要求;(二)總體設(shè)計(jì)系統(tǒng)
3、功能分析;系統(tǒng)功能模塊劃分與設(shè)計(jì)(系統(tǒng)功能模塊圖)。(三)詳細(xì)設(shè)計(jì)數(shù)據(jù)庫需求分析數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)(ER圖);數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)。類層次圖(四)界面設(shè)計(jì)與各功能模塊實(shí)現(xiàn)(五)系統(tǒng)調(diào)試調(diào)試問題出現(xiàn)的主要問題:編譯語法錯(cuò)誤及修改,重點(diǎn)是運(yùn)行邏輯問題修改和調(diào)整(六)使用說明及編程體會(huì)說明如何使用你編寫的程序,詳細(xì)列出每一步的操作步驟。(七)關(guān)鍵源程序(帶注釋)l 考核方式指導(dǎo)老師負(fù)責(zé)驗(yàn)收程序的運(yùn)行結(jié)果,并結(jié)合學(xué)生的工作態(tài)度、實(shí)際動(dòng)手能力、創(chuàng)新精神和設(shè)計(jì)報(bào)告等進(jìn)行綜合考評(píng),并按優(yōu)秀、良好、中等、及格和不及格五個(gè)等級(jí)給出每位同學(xué)的課程設(shè)計(jì)成績(jī)。具體考核標(biāo)準(zhǔn)包含以下幾個(gè)部分:a平時(shí)出勤 (占10%)b系統(tǒng)
4、需求分析、功能設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)及程序總體結(jié)構(gòu)合理與否(占10%)c程序能否完整、準(zhǔn)確地運(yùn)行,個(gè)人能否獨(dú)立、熟練地調(diào)試程序(占40%)d設(shè)計(jì)報(bào)告(占30%)注意:不得抄襲他人的報(bào)告(或給他人抄襲),一旦發(fā)現(xiàn),成績(jī)?yōu)榱惴帧獨(dú)立完成情況(占10%)。l 課程驗(yàn)收要求a判定算法設(shè)計(jì)的合理性,運(yùn)行相關(guān)程序,獲得正確的數(shù)值結(jié)果。b回答有關(guān)問題。c提交課程設(shè)計(jì)報(bào)告。d提交軟盤(源程序、設(shè)計(jì)報(bào)告文檔)。e依內(nèi)容的創(chuàng)新程度,完善程序情況及對(duì)程序講解情況打分。三、 教材及參考書 朱戰(zhàn)立等著, C+面向?qū)ο蟪绦蛟O(shè)計(jì),人民郵電出版社;鄭莉著, C+ 語言程序設(shè)計(jì)(含實(shí)驗(yàn)指導(dǎo)書)。 清華大學(xué)出版社 ( 結(jié)構(gòu)化程序設(shè)
5、計(jì)部分 ) 錢能主編 ,C+ 程序設(shè)計(jì)教程,清華大學(xué)出版社, 2000.11 戴鋒編著, Visual C+ 程序設(shè)計(jì)基礎(chǔ) , 清華大學(xué)出版社 ,2001.4 呂日著, C+ 程序設(shè)計(jì)教程,清華大學(xué)出版社, C+ 大學(xué)教程,美國 Harvey M.Deitel 等 四、進(jìn)度安排目 錄一、需求分析51.系統(tǒng)設(shè)計(jì)目的與意義52.系統(tǒng)功能需求(系統(tǒng)流程圖)53.系統(tǒng)功能流程圖54.輸入輸出的要求6二、詳細(xì)設(shè)計(jì)61.類設(shè)計(jì):6三、界面設(shè)計(jì)與各功能模塊的實(shí)現(xiàn)91.界面設(shè)計(jì)9四、系統(tǒng)調(diào)試91.首頁進(jìn)入客房管理系統(tǒng)主菜單92錄入客戶客房信息界面:93.顯示客戶客房信息界面104.查找客戶客房信息界面105.
6、刪除客戶客房信息界面106.修改客戶客房信息10五、使用說明及心得體會(huì)10六、附件11一 需求分析1.1綜述隨著人類社會(huì)進(jìn)入信息時(shí)代,計(jì)算機(jī)越來越多地活躍在社會(huì)各個(gè)領(lǐng)域:管理,網(wǎng)絡(luò),計(jì)算,控制,多媒體等。并且在某些方面成為不可缺少的工具,尤其在管理方面,管理軟件的出現(xiàn)使大量繁瑣復(fù)雜的問題變得簡(jiǎn)單易行?,F(xiàn)今酒店賓館的規(guī)模不斷擴(kuò)大,客戶數(shù)量急劇增加,有關(guān)客戶的各種信息也成倍增長,尤其是大量的客房預(yù)訂信息。面對(duì)龐大的信息量,需要有客戶信息管理系統(tǒng)來提高客戶管理工作的效率。通過這樣的系統(tǒng),可以做到信息的規(guī)范管理,科學(xué)統(tǒng)計(jì)和快速的查詢,從而減少管理方面的工作量。當(dāng)前許多酒店正在逐步完善客戶信息管理工作,
7、需要一個(gè)能滿足內(nèi)部管理需求,提高管理效率的應(yīng)用系統(tǒng)進(jìn)行內(nèi)部管理。許多賓館經(jīng)過多年的發(fā)展,規(guī)模不斷擴(kuò)大,客流量成倍增長,積累了大量的客戶信息急需進(jìn)行統(tǒng)一管理以防信息的流失。因此,許多賓館需要一個(gè)功能全面的客戶信息管理系統(tǒng)來進(jìn)行管理,以使管理客戶信息的工作在該系統(tǒng)的配合下更加高效和便捷。1.2系統(tǒng)功能分析酒店客房預(yù)訂信息管理系統(tǒng)是一個(gè)對(duì)客戶全方面管理的程序。該客房預(yù)訂信息管理系統(tǒng)是在Visual C+ 6.0平臺(tái)下設(shè)計(jì)開發(fā),以TXT文檔為后臺(tái)數(shù)據(jù)庫,采用面向?qū)ο蟮恼Z言開發(fā)而成,實(shí)現(xiàn)對(duì)客戶預(yù)訂信息的基本管理,包括客房信息、客戶信息的添加,修改和查詢。該系統(tǒng)充分考慮用戶的操作簡(jiǎn)便性,實(shí)現(xiàn)快捷操作。它有
8、以下幾個(gè)功能:(1)客房設(shè)置:可以添加新客房,修改客房描述(房間等級(jí),內(nèi)部設(shè)施等),刪除客房。(2)客戶設(shè)置:可以添加新客戶,修改客戶信息,刪除已退訂客戶等??蓽?zhǔn)確了解每一客戶的預(yù)訂信息。(3)房間預(yù)訂情況查詢:可按客戶號(hào)、房號(hào)查詢。方便實(shí)用,在眾多房間、客戶中準(zhǔn)確查詢到某一個(gè)房間或客戶。1.3系統(tǒng)總框圖設(shè)計(jì)一個(gè)程序來實(shí)現(xiàn)酒店客房預(yù)訂的管理,該程序應(yīng)該包含信息錄入、輸出、修改、刪除和查詢等功能模塊。本程序各功能模塊結(jié)構(gòu)總框圖如下:二、詳細(xì)設(shè)計(jì)1類設(shè)計(jì)類 customerint no; /客戶編號(hào)char name10; /客戶姓名int borbookMaxbor; /所訂房間char *ge
9、tname() return name; /獲取姓名int gettag() return tag; /獲取刪除標(biāo)記int getno() return no; /獲取客戶編號(hào)void setname(char na) /設(shè)置姓名addcustomer(int n,char *na) /增加客戶類RDatabaseint top; /客戶記錄指針customer readMaxr; /客戶記錄void clear() /刪除所有客戶信void disp() /輸出所有客戶信息類bookint no; /客房編號(hào)char name20; /客房描述int onshelf; /是否預(yù)訂 1:空房
10、2:已預(yù)訂void addbook(int n,char *na) /增加客房int borrowbook() /預(yù)訂操作void retbook() /退訂操作void disp() /輸出客房類BDatabaseBook bookMaxb; /客房記錄int addbook(int n,char *na) /增加客房Book *query(int bookid) /查找客房BDatabase+int top; #Book bookMaxb;+BDatabase() +void clear() +int addbook(int n,char *na)+Book *query(int book
11、id) +void bookdata(); +void disp()-BDatabase() RDatabase+int top+customer readMaxr+customer *query(int customerid)+RDatabase()+void clear()+void disp() -RDatabase() Book+int tag; +int no; #char name20; +int onshelf+char *getname() return name; +void delbook() tag=1; +void addbook(int n,char *na)+voi
12、d retbook() +void disp() customer+int tag; +int no;#char name10+int borbookMaxbor#char *getname() return name;+int gettag() return tag;+int getno() return no;+void setname(char na)+void addcustomer(int n,char *na) / 三 界面設(shè)計(jì)與各功能模塊的實(shí)現(xiàn)1. 界面設(shè)計(jì)1.界面設(shè)計(jì)程序運(yùn)行后會(huì)出現(xiàn)一個(gè)簡(jiǎn)捷的窗口,便于用戶查詢數(shù)據(jù)。2.功能模塊實(shí)現(xiàn)設(shè)計(jì)通過主窗體調(diào)用其他窗體。應(yīng)用系統(tǒng)主控界面包
13、括客戶信息錄入,查找等功能模塊??蛻粜畔浫牍δ芡瓿煽蛻粜畔⒑涂头康妮斎?。記錄查詢功能可以對(duì)數(shù)據(jù)各分類的記錄進(jìn)行查詢。四 系統(tǒng)調(diào)試(1)程序主界面:界面簡(jiǎn)潔明了,一目了然,便于操作。選擇數(shù)字0-4進(jìn)入相應(yīng)功能。(2)客戶信息:主界面選擇4進(jìn)入客戶信息管理菜單。 (3)客房信息:主界面選擇3進(jìn)入客房信息管理菜單。(4)訂房:主界面選擇1進(jìn)入訂房功能。五 使用說明及心得體會(huì)此次c+課程設(shè)計(jì),在指導(dǎo)教師的精心教導(dǎo)下,我學(xué)會(huì)了如何用C+編寫一個(gè)簡(jiǎn)單的應(yīng)用程序。首先要對(duì)程序的設(shè)計(jì)要求有一個(gè)比較明確的認(rèn)識(shí),然后系統(tǒng)分析與系統(tǒng)設(shè)計(jì),最后是代碼設(shè)計(jì)與調(diào)試。程序?qū)崿F(xiàn)上,設(shè)計(jì)了簡(jiǎn)單的查詢界面,將各個(gè)功能集中出來按
14、照程序編寫原則,便于查詢。六、附件#include #include #include #include /輸入/輸出文件流類using namespace std;const int Maxr=100; /最多的客戶const int Maxb=100; /最多的客房const int Maxbor=5; /每位客戶最多預(yù)訂五間客房/客戶類,實(shí)現(xiàn)對(duì)客戶的信息的描述class customer private:int tag; /刪除標(biāo)記 1:已刪 0:未刪int no; /客戶編號(hào)char name10; /客戶姓名int borbookMaxbor; /所訂房間 public:custom
15、er() char *getname() return name;/獲取姓名int gettag() return tag; /獲取刪除標(biāo)記int getno() return no; /獲取客戶編號(hào) void setname(char na) /設(shè)置姓名 strcpy(name,na);void delbook() tag=1; /設(shè)置刪除標(biāo)記 1:已刪 0:未刪void addcustomer(int n,char *na) /增加客戶 tag=0;no=n;strcpy(name,na);for(int i=0;iMaxbor;i+)borbooki=0;void borrowbook(
16、int bookid) /預(yù)訂操作for(int i=0;iMaxbor;i+) if (borbooki=0)borbooki=bookid;return;int retbook(int bookid) /退訂操作 for(int i=0;iMaxbor;i+) if(borbooki=bookid)borbooki=0;return 1;return 0;void disp() /讀出客戶信息cout setw(5) no setw(10) namet 客房編號(hào):;for(int i=0;iMaxbor;i+)if(borbooki!=0)cout borbooki;cout endl;
17、class RDatabase /客戶庫類,實(shí)現(xiàn)建立客戶的個(gè)人資料 private: int top; /客戶記錄指針 customer readMaxr; /客戶記錄public:RDatabase() /構(gòu)造函數(shù),將customer.txt讀到read中customer s;top=-1;fstream file(customer.txt,ios:in); /打開一個(gè)輸入文件while (1)file.read(char *)&s,sizeof(s);if (!file)break;top+;readtop=s;file.close(); /關(guān)閉 customer.txt void cle
18、ar() /刪除所有客戶信息top=-1;int addcustomer(int n,char *na) /添加客戶時(shí)先查找是否存在customer *p=query(n);if (p=NULL)top+; readtop.addcustomer(n,na); return 1;return 0;customer *query(int customerid) /按編號(hào)查找for (int i=0;i=top;i+)if (readi.getno()=customerid & readi.gettag()=0)return &readi;return NULL;void disp() /輸出所有
19、客戶信息for (int i=0;i=top;i+) readi.disp();void customerdata(); /客戶庫維護(hù)RDatabase() /析構(gòu)函數(shù),將read寫到customer.txt文件中fstream file(customer.txt,ios:out); for (int i=0;i=top;i+)if (readi.gettag()=0)file.write(char *)&readi,sizeof(readi);file.close();void RDatabase:customerdata()char choice;char rname20;int cust
20、omerid;customer *r;while (choice!=0)cout nnttt客 戶 信 息nnnttt1 新 增nnttt2 更 改nnttt3 刪 除nnttt4 查 找nnttt5 顯 示nnttt6 全 刪nnttt0 返 回 choice;switch (choice) case 1:cout customerid;cout rname;addcustomer (customerid,rname);break; case 2:cout customerid;r=query(customerid);if (r=NULL)cout 該客戶不存在 endl; break;co
21、ut rname;r-setname(rname); break; case 3: cout customerid;r=query(customerid);if (r=NULL)cout 該客戶不存在 delbook();break;case 4:cout customerid;r=query(customerid);if (r=NULL)cout 該客戶不存在disp();break;case 5:disp();break;case 6:clear();break;default:cout正在返回主界面.;break;class Book /客房類,實(shí)現(xiàn)對(duì)客房的描述,如客房等級(jí),有無寬帶等p
22、rivate: int tag; /刪除標(biāo)記 1:已刪 0:未刪int no; /客房編號(hào)char name20; /客房描述int onshelf; /是否預(yù)訂 1:空房 2:已預(yù)訂public:Book()char *getname() return name; /獲取姓名int getno() return no; /獲取客房編號(hào)int gettag() return tag; /獲取刪除標(biāo)記void setname(char na) /設(shè)置客房描述strcpy(name,na);void delbook() tag=1; /刪除客房void addbook(int n,char *na
23、) /增加客房tag=0;no=n;strcpy(name,na);onshelf=1;int borrowbook() /預(yù)訂操作if (onshelf=1)onshelf=0;return 1;return 0;void retbook() /退訂操作onshelf=1;void disp() /輸出客房cout setw(6) no setw(18) name setw(10)(onshelf=1? 空房:已預(yù)訂) endl;class BDatabase /客房庫類,實(shí)現(xiàn)對(duì)客房的管理,如查找、刪除等private: int top; /客房記錄指針Book bookMaxb; /客房記
24、錄public:BDatabase() /構(gòu)造函數(shù),將book.txt讀到book中 Book b;top=-1;fstream file(book.txt,ios:in);while (1)file.read(char *)&b,sizeof(b);if (!file) break;top+;booktop=b;file.close(); void clear() /全刪top=-1; int addbook(int n,char *na) /增加客房Book *p=query(n);if (NULL=p)top+;booktop.addbook(n,na);return 1;return
25、0;Book *query(int bookid) /查找客房for (int i=0;i=top;i+)if (booki.getno()=bookid &booki.gettag()=0)return &booki;return NULL;void bookdata(); /客房庫維護(hù)void disp()for (int i=0;i=top;i+) if (booki.gettag()=0) booki.disp();BDatabase() /析構(gòu)函數(shù),將book寫到book.txt文件中fstream file(book.txt,ios:out); for (int i=0;i=top
26、;i+)if (booki.gettag()=0)file.write(char *)&booki,sizeof(booki);file.close();void BDatabase:bookdata() char choice;char bname40;int bookid;Book *b;while (choice!=0)cout nnnttt客 房 信 息 endlendl;coutnttt1 新 增nnttt2 更 改nnttt3 刪 除nnttt4 查 找nnttt5 顯 示nnttt6 全 刪nnttt0 返 回 choice;switch (choice)case 1:cout
27、bookid; cout bname;addbook(bookid,bname);break; case 2:cout bookid;b=query(bookid);if (b=NULL)cout 該客房不存在 endl; break;cout bname;b-setname(bname); break; case 3: cout bookid;b=query(bookid);if (b=NULL) cout 該客房不存在 delbook();break;case 4:cout bookid;b=query(bookid);if (b=NULL)cout 該客房不存在disp();break;case 5:disp();break;case 6
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 股份制企業(yè)創(chuàng)立人合同書格式
- 建筑工程勞務(wù)分包合同
- 工程合同范本在線查閱
- 2024新版簡(jiǎn)單食堂承包合同書范本
- 簡(jiǎn)單股權(quán)轉(zhuǎn)讓協(xié)議書范本
- 建筑維修保養(yǎng)服務(wù)補(bǔ)充協(xié)議
- 2023年高考地理重點(diǎn)難點(diǎn)考點(diǎn)通練-服務(wù)業(yè)(原卷版)
- 1.1堅(jiān)持改革開放(導(dǎo)學(xué)案) 2024-2025學(xué)年統(tǒng)編版道德與法治九年級(jí)上冊(cè)
- 個(gè)人投資合同協(xié)議樣本
- 生物中圖版自主訓(xùn)練:第一單元第二章第二節(jié)染色體結(jié)構(gòu)變異對(duì)性狀的影響
- 7.1促進(jìn)民族團(tuán)結(jié) (課件) 2024-2025學(xué)年九年級(jí)道德與法治上冊(cè) (統(tǒng)編版)
- 2025屆新高考語文熱點(diǎn)沖刺復(fù)習(xí)議論文開頭結(jié)尾
- 中國法律史-第二次平時(shí)作業(yè)-國開-參考資料
- (正式版)SHT 3551-2024 石油化工儀表工程施工及驗(yàn)收規(guī)范
- syb游戲模塊 基本企業(yè)周期
- 上海市初級(jí)中學(xué)英語學(xué)科教學(xué)基本要求
- 開展修舊利廢活動(dòng)方案
- 交流高壓架空輸電線路跨越石油天然氣管道的相關(guān)規(guī)定
- 初三全一冊(cè)單詞表漢語部分
- 《幼兒教師口語訓(xùn)練》課程實(shí)訓(xùn)手冊(cè)
- 關(guān)于“釣魚執(zhí)法”現(xiàn)象的法律思考
評(píng)論
0/150
提交評(píng)論