酒店客房預(yù)訂管理系統(tǒng).doc_第1頁
酒店客房預(yù)訂管理系統(tǒng).doc_第2頁
酒店客房預(yù)訂管理系統(tǒng).doc_第3頁
酒店客房預(yù)訂管理系統(tǒng).doc_第4頁
酒店客房預(yù)訂管理系統(tǒng).doc_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

。 -可編輯修改- 院院 系:系: 計(jì)計(jì)算機(jī)科學(xué)學(xué)院算機(jī)科學(xué)學(xué)院 專業(yè)專業(yè)、年、年級級: : 2010 計(jì)計(jì)科(科(1)大班)大班 課課程名稱:程名稱: 軟軟件工程件工程 項(xiàng)項(xiàng)目名稱:目名稱: 酒店客房酒店客房預(yù)訂預(yù)訂管理系管理系統(tǒng)統(tǒng) 學(xué)號姓名:學(xué)號姓名: 10061064 朱辰朱辰 學(xué)號姓名:學(xué)號姓名: 10061065 徐徐麗麗 學(xué)號姓名:學(xué)號姓名: 10081109 張賽張賽北北 學(xué)號姓名:學(xué)號姓名: 10151251 張勝張勝南南 指指導(dǎo)導(dǎo)教教師師: : 劉劉衛(wèi)衛(wèi)平平 2012 年年 12 月月 23 日日 。 -可編輯修改- 目目錄錄 第一章第一章 系系統(tǒng)統(tǒng)概述概述 1 1.1 系統(tǒng)開發(fā)背景和意義 .1 1.2 開發(fā)語言簡介 .1 1.3 本系統(tǒng)簡介1 1.4 系統(tǒng)運(yùn)行環(huán)境 .2 第第二二章章 系系統(tǒng)統(tǒng)需求分析需求分析 2 2.1 用戶需求 .2 2.2 功能需求 .3 2.3 性能需求 .3 2.4 出錯處理需求 .3 2.5 功能圖 .3 2.6 數(shù)據(jù)流圖 .4 2.7 E-R 圖 5 第第三三章章 系系統(tǒng)總統(tǒng)總體體設(shè)計(jì)設(shè)計(jì) 5 3.1 系統(tǒng)功能設(shè)計(jì) .5 3.2 系統(tǒng)功能模塊圖 .6 第第四四章章 系系統(tǒng)詳細(xì)設(shè)計(jì)統(tǒng)詳細(xì)設(shè)計(jì) 8 4.1 系統(tǒng)詳細(xì)設(shè)計(jì)進(jìn)度規(guī)劃(甘特圖) .8 4.2 系統(tǒng)詳細(xì)設(shè)計(jì)任務(wù) .8 4.3 系統(tǒng)物理方案配置設(shè)計(jì) .9 4.4 系統(tǒng)輸入輸出設(shè)計(jì) .9 4.5 系統(tǒng)程序流程圖 .11 第第五五章章 模模塊設(shè)計(jì)塊設(shè)計(jì)思路分析思路分析 11 第第六六章章 使用使用說說明明 12 第七章第七章 程序源代程序源代碼碼 16 結(jié)結(jié)束束語語 36 參考文獻(xiàn)參考文獻(xiàn) 37 。 -可編輯修改- 第一章第一章 系系統(tǒng)統(tǒng)概述概述 1.1 系系統(tǒng)統(tǒng)開開發(fā)發(fā)背景和意背景和意義義 隨著人類社會進(jìn)入信息時代,計(jì)算機(jī)越來越多地活躍在社會各個領(lǐng)域,成為不可缺少的工具,尤 其在管理方面,管理軟件的出現(xiàn)使大量繁瑣復(fù)雜的問題變得簡單易行。在人民生活水平提高的同時, 餐飲,住宿,娛樂業(yè)在服務(wù)行業(yè)中占有越來越重要的地位。要使在當(dāng)前酒店行業(yè)日趨激烈的競爭中脫 穎而出,必須努力發(fā)展自己在管理方面的特色,避免傳統(tǒng)管理方法的失誤,使酒店的信譽(yù)以及各個管 理方面都能夠出現(xiàn)零失誤,給管理者和普通的營業(yè)員帶來操作上的方便,對整個酒店各個方面的業(yè) 務(wù)帶來快捷,方便,高效的服務(wù),才是管理軟件的成功之處。 現(xiàn)今酒店賓館的規(guī)模不斷擴(kuò)大,客戶數(shù)量急劇增加,有關(guān)客戶的各種信息也成倍增長,尤其是大 量的客房預(yù)訂信息。面對龐大的信息量,需要有客戶信息管理系統(tǒng)來提高客戶管理工作的效率。通過 這樣的系統(tǒng),可以做到信息的規(guī)范管理,科學(xué)統(tǒng)計(jì)和快速查詢,從而減少管理方面的工作量。當(dāng)前許 多酒店正在逐步完善客戶信息管理工作,需要一個能滿足內(nèi)部管理需求,提高管理效率的應(yīng)用系統(tǒng) 進(jìn)行內(nèi)部管理。許多酒店經(jīng)過多年的發(fā)展,規(guī)模不斷擴(kuò)大,客流量成倍增長,積累了大量的客戶信息 急需進(jìn)行統(tǒng)一管理以防信息的流失。因此,許多酒店需要一個功能全面的客戶信息管理系統(tǒng)來進(jìn)行 管理,以使管理客戶信息的工作在該系統(tǒng)的配合下更加高效和便捷。 1.2 開開發(fā)語發(fā)語言言簡簡介介 酒店客房預(yù)訂信息管理系統(tǒng)是一個對客戶全方面管理的程序。該客房預(yù)訂信息管理系統(tǒng)是在 Visual C+ 6.0 平臺下設(shè)計(jì)開發(fā),以 TXT 文檔為后臺數(shù)據(jù)庫, 利用 Visual C+ 6.0 提供的各種面向?qū)ο蟮拈_發(fā)工具,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后, 對初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。Microsoft 的 Visual C+ 6.0 作為一種面向網(wǎng)絡(luò)、支持各種用戶終端的開發(fā)平臺環(huán)境,推動新一代因特網(wǎng)的發(fā)展,真正地 讓人們可以在任何時間、任何地點(diǎn)、通過任何設(shè)備得到信息。 1.3 本系本系統(tǒng)簡統(tǒng)簡介介 現(xiàn)代化的酒店組織龐大、服務(wù)項(xiàng)目多、信息量大,想要提高勞動生產(chǎn)、降低成本、提高服務(wù)質(zhì)量 和管理水平,進(jìn)而促進(jìn)經(jīng)濟(jì)效益,必須借助計(jì)算機(jī)來進(jìn)行現(xiàn)代化的信息管理。酒店管理系統(tǒng)正是為此 而設(shè)計(jì)的。優(yōu)秀的酒店客房管理系統(tǒng)操作方便,靈活性好,系統(tǒng)安全性高,運(yùn)行穩(wěn)定。這也是我所設(shè) 計(jì)本程序的目的之一。本系統(tǒng)針對用戶和客戶以及客房的管理采用了當(dāng)今常用的 C/S 結(jié)構(gòu)而設(shè)計(jì)。 。 -可編輯修改- 采用面向?qū)ο蟮恼Z言開發(fā)而成,實(shí)現(xiàn)對客戶預(yù)訂信息的基本管理,包括訂房,退房,客房信息、客戶 信息的添加、修改和查詢。 1.4 系系統(tǒng)統(tǒng)運(yùn)行運(yùn)行環(huán)環(huán)境境 機(jī)型:PC 處理器:奔四或更高 內(nèi)存:512M 或更高 硬盤:4G 或更高 輸入輸出設(shè)備:鍵盤、掃描儀、打印機(jī)、顯示器等。 數(shù)據(jù)庫軟件:Notepad 編程工具、編程語言:visual C+ 編譯軟件:Microsoft Visual C+ 6.0 操作系統(tǒng):Microsoft Windows XP 第二章第二章 系系統(tǒng)統(tǒng)需求分析需求分析 2.1 用用戶戶需求需求 該酒店預(yù)訂管理系統(tǒng)使用戶能迅速而便捷的了解和查詢酒店信息,根據(jù)自己的需求來預(yù)訂房間。 一個方便地實(shí)現(xiàn)對客房變更、房價及預(yù)訂信息的自動化操作。 使用該系統(tǒng)全面管理酒店信息,為用 戶節(jié)省時間和人力,更能全面、有效地掌握酒店基本情況,及時獲取最新的準(zhǔn)確資料和信息。該軟件 能系統(tǒng)管理酒店的信息,功能與實(shí)現(xiàn)方面有相當(dāng)?shù)尼槍π院蛯?shí)用性。該系統(tǒng)的主要功能有酒店信息 管理,房間類型管理,訂單信息管理,業(yè)務(wù)人員編輯和系統(tǒng)用戶管理。 2.2 功能需求功能需求 本系統(tǒng)主要具備以下幾個基本功能: 。 -可編輯修改- (1)客房預(yù)訂:按照客戶需求,為新客戶分配新客房。 (2)退房管理:刪除已退客戶信息,及時更新客房留存狀態(tài),方便新客戶入住。 (3)客房設(shè)置:可以添加新客房,修改客房描述(房間等級,內(nèi)部設(shè)施等),刪除客房。 (4)客戶設(shè)置:可以添加新客戶,修改客戶信息,刪除已退訂客戶等,可準(zhǔn)確了解每一客 戶的預(yù)訂信息。 (5)房間預(yù)訂情況查詢:可按客戶號、房號查詢,方便實(shí)用,在眾多房間、客戶中準(zhǔn)確查詢到某一個房 間或客戶。 2.3 性能需求性能需求 1.技術(shù)可行性 該客房預(yù)訂信息管理系統(tǒng)是在 Visual C+ 6.0 平臺下設(shè)計(jì)開發(fā),以 TXT 文檔為后臺數(shù)據(jù)庫, 采用面向?qū)ο蟮恼Z言開發(fā)而成,系統(tǒng)的客戶端在 Windows 平臺下運(yùn)行,服務(wù)器端可在 Windows 平臺 或 UNIX 平臺下運(yùn)行。 2.經(jīng)濟(jì)可行性 該系統(tǒng)節(jié)省人力資源成本的同時,可以提高業(yè)務(wù)效率,并能夠及時、準(zhǔn)確、迅速地滿足顧客服務(wù) 的需求,系統(tǒng)的開發(fā)成本低,現(xiàn)有的 PC 機(jī)即可提供該系統(tǒng)開發(fā)工作需要的所有硬件設(shè)備環(huán)境。 3.操作可行性 直接瀏覽網(wǎng)頁的形式,利用鼠標(biāo)進(jìn)行傻瓜式的操作,操作中的每一步都會有相應(yīng)的提示,這 樣可以讓更多的人群在最短的時間內(nèi)學(xué)會使用他。 2.4 出出錯處錯處理需求理需求 在進(jìn)行每一步操作時,都會有相應(yīng)的提示操作,當(dāng)系統(tǒng)出錯時,會有相應(yīng)的提示信息讓你 尋找錯誤,它的簡單,易學(xué)的特性使得能夠廣泛普及,讓更多的人去使用。 ( (為為了更好地了更好地闡闡述需求更能,我述需求更能,我們們做了做了詳細(xì)詳細(xì)的的圖圖形形說說明)明) 2.5 系系統(tǒng)統(tǒng)功能功能圖圖 。 -可編輯修改- 2.6 系系統(tǒng)統(tǒng)數(shù)據(jù)流數(shù)據(jù)流圖圖 。 -可編輯修改- 2.7 E-R 圖圖 第三章第三章 系系統(tǒng)總統(tǒng)總體體設(shè)計(jì)設(shè)計(jì) 3.1 系系統(tǒng)統(tǒng)功能功能設(shè)計(jì)設(shè)計(jì) 該系統(tǒng)充分考慮用戶的操作簡便性,實(shí)現(xiàn)快捷操作。它有以下幾個功能: (1)客房預(yù)訂:按照客戶需求,為新客戶分配新客房。 (2)退房管理:刪除已退客戶信息,及時更新客房留存狀態(tài),方便新客戶入住。 (3)客房設(shè)置:可以添加新客房,修改客房描述(房間等級,內(nèi)部設(shè)施等),刪除客房。 。 -可編輯修改- (4)客戶設(shè)置:可以添加新客戶,修改客戶信息,刪除已退訂客戶等,可準(zhǔn)確了解每一客 戶的預(yù)訂信息。 (5)房間預(yù)訂情況查詢:可按客戶號、房號查詢,方便實(shí)用,在眾多房間、客戶中準(zhǔn)確查詢到某個房間 或客戶。 4.2 系系統(tǒng)統(tǒng)功能模功能模塊圖塊圖 根據(jù)上述系統(tǒng)功能分析,能得出下面系統(tǒng)軟件功能模塊圖: 3.2.1 整體模塊分配 該系統(tǒng)充分考慮用戶的操作簡便性,實(shí)現(xiàn)快捷操作。它有以下四大模塊: (1)訂房:按照客戶需求,為新客戶分配新客房。 (2)退訂:刪除已退客戶信息,及時更新客房留存狀態(tài),方便新客戶入住。 (3)客房信息:可以添加新客房,修改客房描述(房間等級,內(nèi)部設(shè)施等),刪除客房以及查看所有 客房的狀態(tài)信息。 (4)客戶信息:可以添加新客戶,修改客戶信息(客戶編號,客戶姓名),刪除已退訂客戶信息以及 查看所有客戶的訂房狀態(tài)信息。 3.2.2 客戶信息子模塊 。 -可編輯修改- (1)新增:錄入客戶編號、客戶姓名等信息 (2)更改:更改相應(yīng)客戶的個人信息。 (3)刪除:刪除相應(yīng)客戶的個人信息。 (4)查詢:查詢所需客戶的訂房信息。 (5)顯示:顯示所有預(yù)訂客戶的個人信息以及預(yù)訂房號。 (6)全刪:刪除所有客戶信息。 3.2.3 客房信息子模塊 (1)新增:錄入客房編號、客房描述等相關(guān)信息。 。 -可編輯修改- (2)更改:更改相應(yīng)客房的信息。 (3)刪除:刪除相應(yīng)客戶及客房的信息。 (4)查詢:查詢所需客房的訂房狀態(tài)。 (5)顯示:顯示所有客房的房號以及預(yù)訂狀態(tài)信息。 (6)全刪:刪除所有客房信息。 第四章第四章 系系統(tǒng)詳細(xì)設(shè)計(jì)統(tǒng)詳細(xì)設(shè)計(jì) 4.1 系系統(tǒng)詳細(xì)設(shè)計(jì)進(jìn)統(tǒng)詳細(xì)設(shè)計(jì)進(jìn)度度規(guī)規(guī)劃劃 甘特圖如下 4.2 系系統(tǒng)詳細(xì)設(shè)計(jì)統(tǒng)詳細(xì)設(shè)計(jì)任任務(wù)務(wù) 1.算法過程的設(shè)計(jì): 。 -可編輯修改- 本詳細(xì)設(shè)計(jì)采用的是流程圖的方式來表達(dá)每個處理過程的算法。 2.數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì): 對于處理過程中涉及的概念性的數(shù)據(jù)類型進(jìn)行確切的定義。 3.測試用例設(shè)計(jì): 測試用例包括輸入數(shù)據(jù)和預(yù)期結(jié)果等內(nèi)容。 4.3 系系統(tǒng)統(tǒng)物理方案配置物理方案配置設(shè)計(jì)設(shè)計(jì) 1.設(shè)計(jì)指標(biāo) 1)系統(tǒng)的可靠性:該系統(tǒng)要求 24 小時不間斷工作工作,發(fā)生錯誤的概率低于 0.01%。 系統(tǒng)吞吐量 2)要提高系統(tǒng)的吞吐量:要求使用具有大吞吐量的計(jì)算機(jī)。應(yīng)該選擇具有較高性能的計(jì)算機(jī)。 3)系統(tǒng)響應(yīng)時間:響應(yīng)時間不超過 2 秒 4)系統(tǒng)處理方式:該系統(tǒng)采用主機(jī)系統(tǒng)方式。 2.計(jì)算機(jī)硬件配置 計(jì)算機(jī)硬件選擇取決于要運(yùn)行的軟件系統(tǒng),本系統(tǒng)建議最低采取如下配置:內(nèi)存:512MB;CPU: 奔四 1.8GHZ 以上;硬盤:空余空間 4G。 4.4 系系統(tǒng)輸統(tǒng)輸入入輸輸出出設(shè)計(jì)設(shè)計(jì) 4.4.1 輸入設(shè)計(jì)原則 1.輸入數(shù)據(jù)量設(shè)計(jì):需要輸入客戶數(shù)據(jù),數(shù)據(jù)量不大。 2.輸入錯誤檢測:檢測客戶登記狀態(tài),確保不會重復(fù)登記或登記錯誤。 4.4.2 數(shù)據(jù)輸入設(shè)備的選擇 本系統(tǒng)選擇鍵盤、鼠標(biāo)人工輸入方式。 4.4.3 輸入檢驗(yàn)設(shè)計(jì) 本系統(tǒng)對輸入檢驗(yàn)設(shè)計(jì)的地方有如下幾處: 1.當(dāng)前臺工作人員輸入客戶數(shù)據(jù)時,系統(tǒng)會自動檢測該信息是否已在系統(tǒng)中存在。 。 -可編輯修改- 2.當(dāng)業(yè)務(wù)員輸入房間號時,系統(tǒng)會檢測該房間號是否存在,若不存在會提示酒店沒該房間。 4.4.4 輸出設(shè)計(jì)內(nèi)容 1.輸出信息應(yīng)包括系統(tǒng)的使用者,如客戶、酒店管理人員、前臺服務(wù)人員等。 2.信息應(yīng)以表格及文檔形式輸出。 3.輸出設(shè)備:打印機(jī)、終端顯示器。 4.輸出介質(zhì):輸出到專用紙張及電腦屏幕上。 4.4.5 錯誤改正方法 系統(tǒng)出現(xiàn)錯誤時,將彈出提示框。并允許工作人員改正。 。 -可編輯修改- 4.5 系系統(tǒng)統(tǒng)程序流程程序流程圖圖 第五章第五章 模模塊設(shè)計(jì)塊設(shè)計(jì)思路分析思路分析 本程序共有五大功能模塊:新建模塊、更改模塊、刪除模塊、查詢模塊和顯示模塊。各模塊在功能 上互相補(bǔ)充,在程序中互相融合,才能實(shí)現(xiàn)一個具有多種功能的管理系統(tǒng)。 (1)新建模塊:實(shí)現(xiàn)所有客房、訂房客戶的錄入工作。 。 -可編輯修改- (2)更改模塊:提供數(shù)據(jù)的修改,包括客戶姓名、客房描述等。 (3)刪除模塊:將已退訂的客戶從數(shù)據(jù)庫中刪除。 (4)查詢模塊:本程序最重要的模塊,也是本系統(tǒng)的精髓所在。通過房間號或客戶號實(shí)現(xiàn)客房的 預(yù)訂情況以及客戶入住情況的查詢工作。 (5)顯示模塊:顯示所有客房、訂房客戶的基本信息。 在程序設(shè)計(jì)上,我們的目標(biāo)就是先實(shí)現(xiàn)單個模塊,進(jìn)而實(shí)現(xiàn)整個程序。本程序正是本著這種思想, 一步一步,有條不紊的進(jìn)行規(guī)劃與設(shè)計(jì)。本程序通過四個類:客戶類、客戶庫類、客房類、客房庫類, 并通過主函數(shù)調(diào)用類函數(shù)實(shí)現(xiàn)了這五大功能模塊的功能。 章 6 章 使用使用說說明明 (1)程序主界面:界面簡潔明了,一目了然,便于操作。選擇數(shù)字 0-6 進(jìn)入相應(yīng)功能。 (2(訂房:主界面選擇 1 進(jìn)入訂房功能 。 -可編輯修改- (3(查詢房間預(yù)訂情況:主界面選擇 3 進(jìn)入該功能 (4(增刪客戶信息:主界面選擇 4 進(jìn)入該功能 1.增加客戶信息:系統(tǒng)提示輸入客戶號碼、姓名等信息,按要求錄入即可。 2.刪除個人信息:系統(tǒng)提示輸入要更改的客戶號,輸入后即可更改該客戶的個人信息。 3.返回:返回主界面。 。 -可編輯修改- (5)增刪房間信息:主界面選擇 5 進(jìn)入客房信息管理菜單。 1.新增:系統(tǒng)提示輸入房間號、房間描述等信息,按要求錄入即可。 2.刪除:系統(tǒng)提示輸入要刪除的房間號,輸入后即可刪除該房間。 3.返回:返回主界面。 (6)查詢客戶和房間總信息量:主界面選擇 6 進(jìn)入該功能, 通過讀取文件信息、預(yù)訂然后將信息輸出顯示。 。 -可編輯修改- (7)退房:主界面選擇 2 進(jìn)入退房功能。 (8)退出:主界面選擇 0 退出程序。 (9(文件中讀取房間信息 room 。 -可編輯修改- (10(文件讀取客戶信息 customer 第七章第七章 程序源代程序源代碼碼 程序源代碼包含三大塊:類定義、各功能函數(shù)定義及實(shí)現(xiàn)和主函數(shù)實(shí)現(xiàn) 類定義源代碼: #ifndef INFO_H #define INFO_H #include #include #include using namespace std; namespace info_space class Customer public: Customer(); string name; int number; /客戶編號 ; class Room 。 -可編輯修改- public: Room(); int room_number; int room_level;/房間等級,1-5 級 string room_config;/房間配置:高級,優(yōu),良,中等,普通 ; class CustomerBase public: CustomerBase(); void add(Customer temp);/前條件,temp 已經(jīng)含有值 void remove(Customer temp); Customer the_customer; CustomerBase* next; ; class RoomBase public: RoomBase(); void add(Room temp); void remove(Room temp); Room the_room; RoomBase* next; ; class InfoBase public: int customer_number; int room_number; InfoBase(); void add(InfoBase* void remove(InfoBase* bool check(InfoBase* bool checkall(InfoBase* void output(InfoBase* 。 -可編輯修改- InfoBase* next; ; typedef CustomerBase* CBasePtr; typedef RoomBase* RBasePtr; typedef InfoBase* IBasePtr; Customer:Customer() /構(gòu)造函數(shù) name=“; number=-1; Room:Room() room_number=-1; room_level=0; room_config=“; CustomerBase:CustomerBase() next=NULL; RoomBase:RoomBase() next=NULL; InfoBase:InfoBase() next=NULL; void pause() char get; coutt_name; while(!instream.eof() instreamt_number; t_temp-the_=t_name; t_temp-the_customer.number=t_number; if(instream.eof() return; t_temp-next=temp; temp=t_temp; t_temp=NULL; t_temp=new CustomerBase; /循環(huán)創(chuàng)建用戶信息類 instreamt_name; void writefile(ofstream CBasePtr t_temp=temp; /為了防止寫完文件后,指針到達(dá)指針尾 while(t_temp!=NULL) if(t_temp-the_=“) t_temp=t_temp-next; if(t_temp=NULL) break; /這兩個 if 語句用來判別輸出客戶信息 outstreamnumber; while(!instream.eof() instreamlevel; instreamconfig; t_temp-the_room.room_number=number; t_temp-the_room.room_level=level; t_temp-the_room.room_config=config; if(instream.eof() return; t_temp-next=temp; temp=t_temp; t_temp=NULL; t_temp=new RoomBase; instreamnumber; void writefile(ofstream RBasePtr t_temp=temp; while(t_temp!=NULL) if(t_temp-the_room.room_number=-1) t_temp=t_temp-next; if(t_temp=NULL) break; /這兩個 if 語句用來判別輸出房間信息 outstreamthe_customer.number=number) return true; else the_ptr=the_ptr-next; return false; bool check(RBasePtr while(the_ptr!=NULL) if(the_ptr-the_room.room_number=number) return true; else the_ptr=the_ptr-next; return false; void CustomerBase:add(Customer temp) /添加客戶信息 if(=“|temp.number=-1) coutnext; if(check(temp_ptr,temp.number) coutnext=ptr; outstream.open(“E:customer.txt“); /open 函數(shù)會刷新文檔,里面存儲的內(nèi)容全失 writefile(outstream,temp_ptr); /將新的鏈表信息寫入文件中 void CustomerBase:remove(Customer temp) /刪除客戶信息 int flag=0; /設(shè)置一個標(biāo)記,用來檢驗(yàn)刪除是否成功 ifstream instream; ofstream outstream; instream.open(“E:customer.txt“); CBasePtr temp_ptr=NULL; readfile(instream,temp_ptr); /讀取文件中的客戶信息,存入 temp_ptr 中 if(!check(temp_ptr,temp.number) coutnext; /如果第一個元素就是要刪除的元素則直接刪除 after=NULL; /元素已經(jīng)刪除,可以直接寫入文件中,設(shè)置 after 為 NULL 跳過 while 循環(huán) flag=1; while(after!=NULL) if(after-the_customer.number=temp.number) before-next=after-next; flag=1; /刪除成功,設(shè)置標(biāo)志為 1 else before=before-next; after=before-next; /while 循環(huán)結(jié)束 if(flag=0) coutnext; if(check(temp_ptr,temp.room_number) coutnext=ptr; outstream.open(“E:room.txt“); writefile(outstream,temp_ptr); /將新的鏈表信息寫入文件中 void RoomBase:remove(Room temp) int flag=0; /設(shè)置一個標(biāo)記,用來檢驗(yàn)刪除是否成功 ifstream instream; ofstream outstream; instream.open(“E:room.txt“); RBasePtr temp_ptr=NULL; readfile(instream,temp_ptr); /讀取文件中的房間信息,存入 temp_ptr 中 if(!check(temp_ptr,temp.room_number) 。 -可編輯修改- coutnext; /如果第一個元素就是要刪除的元素則直接刪除 after=NULL; /元素已經(jīng)刪除,可以直接寫入文件中,設(shè)置 after 為 NULL 跳過 while 循環(huán) flag=1; while(after!=NULL) if(after-the_room.room_number=temp.room_number) before-next=after-next; flag=1; /刪除成功,設(shè)置標(biāo)志為 1 else before=before-next; after=before-next; /while 循環(huán)結(jié)束 if(flag=0) coutroom_number=rnum; ptr-next=temp_ptr; temp_ptr=ptr; void InfoBase:remove(IBasePtr if(before-customer_number=cnum) temp_ptr=temp_ptr-next; coutnext=after-next; coutnext; bool InfoBase:check(IBasePtr while(ptr!=NULL) if(ptr-customer_number=cnum) 。 -可編輯修改- return true; else ptr=ptr-next; return false; bool InfoBase:checkall(IBasePtr while(ptr!=NULL) if(ptr-customer_number=cnum) coutchoice; if(choice6|choicecustomer_number; coutroom_number; readfile(in_customer,CB_ptr); /讀取文件客戶信息 if(!check(CB_ptr,customer_number) coutadd(IB_ptr,customer_number,room_number); break; case 2: coutcustomer_number; readfile(in_customer,CB_ptr); /讀取文件客戶信息 if(!check(CB_ptr,customer_number) coutremove(IB_ptr,customer_number); else coutchoose; switch(choose) case 1: string name=“; int number=-1; Customer temp; coutname; coutnumber; 。 -可編輯修改- =name; temp.number=number; CB_ptr-add(temp); break; case 2: string name=“; int number=-1; Customer temp; coutnumber; =name; temp.number=number; CB_ptr-remove(temp); break; case 3: system(“cls“); goto label_menu; break; case 5: int choose; coutchoose; switch(choose) case 1: int number=-1; int level=0; string config=“; Room temp; coutnumber; coutlevel; coutconfig; temp.room_number=number; temp.room_level=level; temp.room_config=config; RB_ptr-add(temp); break; case 2: int number=-1; int level=0; string config=“; Room temp; coutnumber; temp.room_number=number; temp.room_level=level; temp.room_config=config; RB_ptr-remove(temp); break; case 3: system(“cls“); goto label_menu; break; case 6: readfile(in_customer,CB_ptr); readfile(in_room,RB_ptr); /讀取兩個文件的所有信息 。 -可編輯修改- CBasePtr cptr=CB_ptr; RBasePtr rptr=RB_ptr; /不修改兩個主要變量的的指向內(nèi)容,所以定義了兩個臨時變 量 cout“所有客戶信息:“the_customer.number=-1) cout“-沒有任何客戶信息!“endlthe_customer.number) coutthe_customer.number“號客戶(“the_“)- -已經(jīng)預(yù)訂房間“endlendl; else coutthe_customer.number“號客戶(“the_“)- -還未預(yù)訂房間“endlnext; cout“所有房間信息:“the_room.room_number=-1) cout“-沒有任何房間信息!“the_room.room_number) coutthe_room.room_number“號房間(“the_room.room_level“級 “ the_room.room_config“)-已經(jīng)被預(yù)訂“endlendl; else coutthe_room.room_number“號房間(“the_room.room_level“級 “ the_room.room_config“)-還未被預(yù)訂“endlnext; 。 -可編輯修改- break; case 0: exit(0); default:goto label_menu; pause(); /system(“cls“); goto label_menu; return 0; 結(jié)結(jié)束束語語 通過一段時間的設(shè)計(jì)與編寫,該酒店管理系統(tǒng)終于有了一個比較完整的框架。現(xiàn)將心得體會總 結(jié)如下: 由于時間倉促,這暫時只是一個簡單的管理系統(tǒng),但從設(shè)計(jì)這個系統(tǒng)的過程中,我感受到了關(guān) 于軟件工程各方面知識在實(shí)際工作中的應(yīng)用。在開發(fā)該系統(tǒng)過程中,我始終堅(jiān)持以下幾項(xiàng)原則,并朝 相應(yīng)目標(biāo)靠攏: 1.實(shí)用為主 任何系統(tǒng)都應(yīng)該以用戶需求為最終目標(biāo),以方便用戶為最高原則,同進(jìn)要融入先進(jìn)的管理經(jīng)驗(yàn) 與技巧。該系統(tǒng)努力根據(jù)用戶的實(shí)際需求功能

溫馨提示

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

最新文檔

評論

0/150

提交評論