




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
/基于C語言的酒店管理系統(tǒng)課程設(shè)計學(xué)院:通信與電子工程學(xué)院班級:電子102班學(xué)號:20101310852010131012姓名:鄒遠(yuǎn)文王帥指導(dǎo)老師:題原日期:20XX11月27日摘要隨著個人計算機(jī)的的普及,越來越多的重復(fù)性工作被交由計算機(jī)來完成。在這種大趨勢下,傳統(tǒng)的紙質(zhì)檔案管理方式已不適應(yīng)現(xiàn)代服務(wù)業(yè)的發(fā)展。數(shù)字化的管理成為酒店等行業(yè)的必要條件。酒店客房管理的電腦化對于優(yōu)化員工工作效率、降低成本及改善服務(wù)質(zhì)量等方面都有十分積極的作用。本程序是用于酒店管理的軟件。它可以實現(xiàn)定退房業(yè)務(wù)處理,用戶信息的記錄、查詢及房間狀態(tài)管理等功能。雖然比較簡陋但已具備應(yīng)用程序的雛形。經(jīng)濟(jì)上主要考慮本系統(tǒng)帶來的效益是否大于開發(fā)本系統(tǒng)的成本,由于本系統(tǒng)的開發(fā)以課程設(shè)計為依托,參與人員的目的以學(xué)習(xí)為主,投入成本比較小。另外,系統(tǒng)管理員和業(yè)務(wù)員都擁有計算機(jī)的專業(yè)知識,酒店前臺工作人員和管理人員不需要經(jīng)過培訓(xùn)或只需要經(jīng)過少量培訓(xùn)即可操作本軟件。這樣可以為開發(fā)本系統(tǒng)節(jié)升資金。同時無紙化辦公可以節(jié)省資源,減少后期資源浪費(fèi)。因此,開發(fā)本系統(tǒng)在經(jīng)濟(jì)是可行的。本程序運(yùn)用MicrosoftVisualC++編譯器編寫,涉及C語言的文件讀寫,結(jié)構(gòu)數(shù)組運(yùn)用及字符串函數(shù)相關(guān)知識。關(guān)鍵詞:數(shù)字化管理酒店管理C語言目錄TOC\o"1-4"\h\u6155摘要I31831第1章緒論 1113901.1概述1121851.1.1酒店管理系統(tǒng)的需求 1111461.2酒店管理系統(tǒng)的當(dāng)前需求 1102711.3酒店管理系統(tǒng)的可行性 28341第2章酒店管理系統(tǒng)的功能實現(xiàn) 3282282.1設(shè)計模塊 368972.1.1添加錄入信息模塊 3253252.1.3刪除客房信息模塊 3131542.1.4查詢剩余客房函數(shù) 3208512.1.5排序剩余客房模塊 3283832.1.6輸出剩余客房函數(shù) 3322432.1.7點(diǎn)餐系統(tǒng) 4287052.2管理員登陸流程 4314912.2主要功能模塊數(shù)據(jù)流程圖 5140922.3管理員預(yù)處理流程 692542.4登記入住系統(tǒng) 6261602.5客房狀態(tài)查詢 6297662.6住戶信息查詢 7309342.7結(jié)賬退房系統(tǒng) 772582.8系統(tǒng)管理 795042.9系統(tǒng)詳細(xì)設(shè)計任務(wù) 7第235633章系統(tǒng)物理配置方案設(shè)計 85163.1設(shè)計指標(biāo) 8134683.1.1系統(tǒng)的可靠性 8248903.1.2系統(tǒng)吞吐量 8144323.1.3系統(tǒng)響應(yīng)時間 866603.2計算機(jī)硬件配置 824260第4章軟件分析與設(shè)計 9200144.1軟件運(yùn)行截圖 9270454.1.1登陸界面 9128164.1.2入住與選擇界面 9165254.1.3查詢界面 10300244.1.4點(diǎn)菜界面 1126094.1.5退房結(jié)賬界面 1321151結(jié)論 1414765參考文獻(xiàn) 158628附錄 16第1章1.1概述隨著旅游業(yè)的發(fā)展,酒店、餐飲娛樂行業(yè)日趨發(fā)達(dá),引入全方位的電腦服務(wù)和電腦管理日益流行。同時,酒店和餐廳娛樂業(yè)引入電腦服務(wù)和管理也取得了優(yōu)良的經(jīng)濟(jì)效益和社會效益。為此,國家建設(shè)部已于最近作出明確規(guī)定:凡星級酒店在項目審批時,其設(shè)計方案必須包括電腦管理系統(tǒng),否則不予立項。可見,酒店管理電腦化勢在必行。酒店管理系統(tǒng)將先進(jìn)的電腦技術(shù)與現(xiàn)代酒店服務(wù)管理完美地結(jié)合起來,實現(xiàn)了住宿、餐飲、娛樂全新概念的服務(wù)和管理方式。1.1.1酒店管理系統(tǒng)的需求傳統(tǒng)的酒店管理往往令管理者花大量的時間來處理顧客投訴,例如錯誤查詢、煩瑣的登記和結(jié)帳手續(xù)、旅客費(fèi)用計算錯誤、空余客房資料不能及時提供等,從而影響出租率,使的管理人員不得不集中精力規(guī)劃管理運(yùn)行策略和進(jìn)行決策。以上問題可通過電腦系統(tǒng)輔助解決,酒店管理的電腦化,不僅是體現(xiàn)酒店現(xiàn)代化形象的一個重要標(biāo)志,而且對于提高員工工作效率,加速資金周轉(zhuǎn)、降低各項成本及改善服務(wù)質(zhì)量都有十分積極的作用。隨著社會經(jīng)濟(jì)的發(fā)展,人們對生活質(zhì)量的要求越來越高,作為服務(wù)之一的酒店業(yè)也在不斷的完善服務(wù)體制。它是集餐飲、住宿、娛樂于一體的立體化服務(wù)體系,其中顧客可以隨意消費(fèi)并統(tǒng)一結(jié)賬;賓館管理者可及時了解酒店的全部運(yùn)營情況及經(jīng)營走勢,找出運(yùn)轉(zhuǎn)成本,作為經(jīng)營決策的依據(jù)。只有運(yùn)用先進(jìn)的科學(xué)管理手段,利用計算機(jī)管理系統(tǒng)才能更好實現(xiàn)這一管理模式。1.2酒店管理系統(tǒng)的當(dāng)前需求酒店管理信息系統(tǒng)是用來收集、處理、存貯和傳播客房、顧客、結(jié)算信息,以信息管理為核心的計算機(jī)應(yīng)用系統(tǒng)。利用酒店管理信息系統(tǒng)中合理的數(shù)據(jù)庫結(jié)構(gòu)來保存數(shù)據(jù)信息,及時了解各個環(huán)節(jié)中信息的變更,通過有效的程序結(jié)構(gòu)來支持各種數(shù)據(jù)操作的執(zhí)行,以提高管理效率,實現(xiàn)酒店服務(wù)的系統(tǒng)化、規(guī)范化、自動化。通過該項目的開發(fā)與使用,可實現(xiàn)以下功能:<1>.快速實現(xiàn)客人入住登記和賬務(wù)處理,減少客人住店及離店時的等待時間<2>.準(zhǔn)確實現(xiàn)客人預(yù)訂入住的要求,實現(xiàn)有效及有保障的前臺系統(tǒng)作業(yè)<3>.快速響應(yīng)住宿客人的有關(guān)項目查詢要求<4>.實現(xiàn)入住、消費(fèi)、結(jié)賬一條龍服務(wù),方便客人在店內(nèi)的各類消費(fèi)要求1.3酒店管理系統(tǒng)的可行性隨著計算機(jī)技術(shù)的飛速發(fā)展,信息時代的到來,信息改變了我們這個社會。各類行業(yè)在日常經(jīng)營管理各個方面也在悄悄地走向規(guī)范化和網(wǎng)絡(luò)化??头抗芾淼男畔⒒潭润w現(xiàn)在將計算機(jī)及網(wǎng)絡(luò)與信息技術(shù)應(yīng)用于經(jīng)營與管理,以現(xiàn)代化工具代替?zhèn)鹘y(tǒng)手工作業(yè)。無疑,使用網(wǎng)絡(luò)信息化管理使客房管理更先進(jìn)、更高效、更科學(xué),信息交流更迅速。酒店管理系統(tǒng)是典型的信息管理系統(tǒng)的一部份,而且是必不可少的一部份。其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起簡潔且資料一致性和完整性強(qiáng)、資料安全性好的數(shù)據(jù)庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。酒店管理系統(tǒng)是酒店經(jīng)營管理中不可缺少的部分,它的內(nèi)容對于經(jīng)營的決策者和管理者來說都至關(guān)重要,所以客房管理系統(tǒng)、信息管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多弊端,如:效率低、保密性差,容易出現(xiàn)差錯等,且對于查詢空房間及已定房間等極為不方便。在當(dāng)今時代,這些完全可以改用計算機(jī)來代替人的手工操作。作為計算機(jī)及網(wǎng)絡(luò)應(yīng)用的一部分,使用計算機(jī)對酒店信息進(jìn)行管理,具有手工管理所無法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高客房經(jīng)營管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。且辦事效率也是決定收入的一個關(guān)鍵因素。第2章酒店管理系統(tǒng)的功能實現(xiàn)該管理系統(tǒng)適用于各類中小型酒店的客房資源和客戶信息的管理,實現(xiàn)了酒店的信息化管理,該系統(tǒng)主要包括基礎(chǔ)信息設(shè)置、客房前臺管理、查詢統(tǒng)計管理、掛賬管理、系統(tǒng)初始設(shè)計、系統(tǒng)維護(hù)等功能。2.1設(shè)計模塊按照需求分析所得,客房信息系統(tǒng)有以下幾個功能模塊:2.1.1添加錄入信息模塊編寫指針摸板,定義臨時的客房間數(shù),包括其各項類的成員,編號,類型,定房日期,價格,客房內(nèi)容,入住天數(shù)。2.1.2修改客房信息模塊讀取保存的客房信息數(shù)據(jù),根據(jù)客房編號查找所需修改的客房信息,然后根據(jù)具體所需,修改成員參數(shù),并保存。2.1.3刪除客房信息模塊從保存中的文件中讀取信息,刪除需要刪除的信息,完善現(xiàn)在的客房運(yùn)作。2.1.4查詢剩余客房函數(shù)分按編號、類型、價格查詢,這樣可以更具有人性化來選擇所剩余的客房,從而進(jìn)行日常安排。2.1.5排序剩余客房模塊根據(jù)具體所需排序,可以是編號、價格或者類型,本系統(tǒng)中根據(jù)的是客房入住的天數(shù)來排序。2.1.6輸出剩余客房函數(shù)輸出根據(jù)系統(tǒng)所需排序后的客房信息,本系統(tǒng)中是根據(jù)了客人入住的有效期即天數(shù)來及時了解空出的房間。2.1.7點(diǎn)餐系統(tǒng)給用戶提供用餐的點(diǎn)餐系統(tǒng),通過菜單來點(diǎn)相應(yīng)的酒水和菜品,最后通過和房間的匹配來統(tǒng)計價格。圖2—1功能結(jié)構(gòu)圖2.2管理員登陸流程登錄入口登錄入口取得用戶名和密碼將UserID存入session中輸入用戶賬戶核對密碼是否正確登錄成功是是否否圖2-2登陸流程2.2主要功能模塊數(shù)據(jù)流程圖2-3功能模塊流程圖2.3管理員預(yù)處理流程客客人無空房客人客人查詢客人信息表收銀住房押金入帳表查詢空房房間占用信息表入住登記表有無空房間交款圖2-4前臺處理流程2.4登記入住系統(tǒng)<1>.登記并記錄顧客姓名<2>.登記并記錄顧客的證件類型及號碼<3>.顯示現(xiàn)有空置房間<4>.選擇所需要的房間并更改房間狀態(tài)信息<5>.計算并記錄住房費(fèi)及押金由于本軟件針對操作員設(shè)計,所以界面應(yīng)盡可能簡單明了。住房及顧客信息由于涉及多種類型的數(shù)據(jù),因此應(yīng)用結(jié)構(gòu)數(shù)組處理。用文件記錄相關(guān)數(shù)據(jù)。2.5客房狀態(tài)查詢分別顯示已入住客房與空置客房讀取住房信息文件的內(nèi)容并判斷分類,借此可以清晰明了的顯示客房狀態(tài)。剩余客房信息查詢,可以通過系統(tǒng)對賓館內(nèi)剩余的客房進(jìn)行查詢,可以了解到未被預(yù)定及未被使用的客房的編號、客房編號、客房類型、客房位置、客房單價等。2.6住戶信息查詢<1>.查詢顧客所租房房號<2>.查詢顧客住房費(fèi)用顧客可以通過輸入自己的姓名來查詢個人的住房信息。2.7結(jié)賬退房系統(tǒng)<1>.退房<2>.更新所退房間狀態(tài)<3>.刪除退房用戶記錄<4>.顯示賬單顧客可以輸入姓名來完成退房操作,房間狀態(tài)將更改為未入住。系統(tǒng)將刪除該用戶信息記錄并讀取生成賬單。2.8系統(tǒng)管理<1>.房間設(shè)定<2>.更改密碼<3>.系統(tǒng)設(shè)置系統(tǒng)管理是每個系統(tǒng)所必須具備的功能,主要是對操作該系統(tǒng)的使用者進(jìn)行管理〔即用戶管理,包括用戶的增加、刪除、密碼的修改以及管理各用戶操作該系統(tǒng)的權(quán)限。并且實現(xiàn)房間基本設(shè)置功能以及各種系統(tǒng)設(shè)置功能,比如說房價設(shè)置等等。2.9系統(tǒng)詳細(xì)設(shè)計任務(wù)<1>.算法過程的設(shè)計:本詳細(xì)設(shè)計采用的是流程圖的方式來表達(dá)每個處理過程的算法;<2>.數(shù)據(jù)結(jié)構(gòu)的設(shè)計:對于處理過程中涉及的概念性的數(shù)據(jù)類型進(jìn)行確切的定義;<3>.測試用例設(shè)計:測試用例包括輸入數(shù)據(jù)和預(yù)期結(jié)果等內(nèi)容。第3章系統(tǒng)物理配置方案設(shè)計3.1設(shè)計指標(biāo)任何系統(tǒng)都應(yīng)該以用戶需求為最終目標(biāo),以方便用戶為最高原則,同進(jìn)要融入先進(jìn)的管理經(jīng)驗與技巧。該系統(tǒng)努力根據(jù)用戶的實際需求功能情況,度身訂造一套先進(jìn)的管理系統(tǒng),并且將在統(tǒng)一的WindowsNT/9X圖形界面下提供各種實用功能,盡可能降低使用前的培訓(xùn)、實施和使用中的維護(hù)時間。力求滿足現(xiàn)在及未來的各種需求,真正為管理及決策提供強(qiáng)有力的支持。3.1.1系統(tǒng)的可靠性該系統(tǒng)要求24小時不間斷工作工作,發(fā)生錯誤的概率低于0.01%。3.1.2系統(tǒng)吞吐量要提高系統(tǒng)的吞吐量,就要求使用具有大吞吐量的計算機(jī)。應(yīng)該選擇具有較高性能的計算機(jī)。<1>.系統(tǒng)響應(yīng)時間響應(yīng)時間不超過2秒<2>.系統(tǒng)處理方式該系統(tǒng)采用主機(jī)系統(tǒng)方式。<3>.地域范圍本系統(tǒng)采用局域網(wǎng)方式。3.2計算機(jī)硬件配置計算機(jī)硬件選擇取決于要運(yùn)行的軟件系統(tǒng),本系統(tǒng)建議最低采取如下配置:<1>內(nèi)存:128MB<2>CPU:奔三1.0GHZ以上<3>硬盤:空余空間4G<4>編譯軟件:microsoftvisualC++6.0第4章軟件分析與設(shè)計運(yùn)行程序后進(jìn)入主界面,首先需要管理員權(quán)限的賬號密碼才可以進(jìn)行登記入住、查詢房間、查詢顧客、退出程序等幾項操作,否則無法進(jìn)入程序。4.1軟件運(yùn)行截圖4.1.1登陸界面圖4-1登陸界面輸入用戶名和密碼即可進(jìn)入:圖4-2管理員登陸界面4.1.2入住與選擇界面輸入對應(yīng)的數(shù)字,選擇不同的功能如選擇入住功能,輸入姓名和身份證號:圖4-3登記注冊4.1.3查詢界面按照顧客姓名查詢所住房間:圖4-4房間查詢查詢房間入住情況:圖4-5房間剩余查詢4.1.4點(diǎn)菜界面點(diǎn)菜功能的實現(xiàn):選擇點(diǎn)菜功能,即可顯示菜單,輸入相應(yīng)的代碼即可選擇菜品和份數(shù):圖4-6菜單輸入菜和酒水的名字,系統(tǒng)會提醒所要點(diǎn)的份數(shù):圖4-7選擇數(shù)量點(diǎn)菜完成后會顯示點(diǎn)菜數(shù)量和金額:圖4-8顯示點(diǎn)菜數(shù)量和總價格同時會顯示提醒輸入點(diǎn)菜的客房房號:圖4-9記錄點(diǎn)菜的房間號4.1.5退房結(jié)賬界面退房結(jié)賬時,會顯示住房消費(fèi)和用餐消費(fèi)金額,同時提醒押金是否足夠,如果夠則退回,不夠則提醒補(bǔ)交:圖4-10退房結(jié)算退房成功后系統(tǒng)會提醒退房成功,同時清除顧客信息!結(jié)論通過對酒店管理系統(tǒng)的編寫,更加掌握了C語言的基本語法,鞏固了以前所學(xué)的C語言知識。同時在C的設(shè)計過程中,對C語言運(yùn)用循環(huán),自定義函數(shù)等方面的思想有了更加深刻的認(rèn)識,體會到了高級編程的強(qiáng)大,對以后編寫程序有了很好的初步認(rèn)識。通過這周的課程設(shè)計,也認(rèn)識到自己對于C語言的一些不足之處,在對書本的知識點(diǎn)還有些掌握的不夠透徹,在一些編程的地方可以更加優(yōu)化代碼,以最少的代碼實現(xiàn)最強(qiáng)大的功能。在指針和鏈表方面,以后也還需要和老師同學(xué)探討,讓以后的C語言編程中能夠合理的運(yùn)用這些C語言里的精華內(nèi)容。參考文獻(xiàn)[1]譚浩強(qiáng).《C程序設(shè)計〔第三版》.清華大學(xué)出版社.20XX[2]何欽銘顏暉.《C語言程序設(shè)計》.高等教育出版社.20XX[3]陳強(qiáng).《C語言核心開發(fā)技術(shù)從開發(fā)到精通》.電子工業(yè)大學(xué)出版社.20XX[4]嚴(yán)蔚敏、吳為民.《數(shù)據(jù)結(jié)構(gòu)〔C語言版》.清華大學(xué)出版社.20XX[5]周二強(qiáng).《新編C程序設(shè)計》.清華大學(xué)出版社.20XX[6]錢能.《C++程序設(shè)計教程》.清華大學(xué)出版社.1999年[7]鄧文華.《數(shù)據(jù)結(jié)構(gòu)實驗和實訓(xùn)教程》.清華大學(xué)出版社.20XX[8]高寒弢.《最短路徑算法在交通咨詢系統(tǒng)中的應(yīng)用》.計算機(jī)與信息技術(shù).20XX附錄程序源代碼:#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h>#include"windows.h"http://***********************************************************************************intinitial_room<>;//初始化80個房間信息intwelcome<>;//驗證用戶登陸,登陸成功顯示歡迎信息intenter<>;intcheck_in<>;intcheck_out<>;intinquire<>;intdiancai1<>;inti=0;intcaijia=0;intpay=0;typedefintElemType;//***********************************************************************************structRoom{intnumber;intrank;intprice;intstate;};structCustomer{charname[13],ID[19];introom_number;intpay;intchange;intday; charcaiming; intcaijia;};intset_name<structCustomer*cs,char*n>{strcpy<cs->name,n>;return14;}intset_ID<structCustomer*cs,char*p>{strcpy<cs->ID,p>;return13;}intset_room_number<structCustomer*cs,intn>{cs->room_number=n;return12;}intset_day<structCustomer*cs,intd>{cs->day=d;return11;}char*get_name<structCustomer*cs>{returncs->name;}char*get_ID<structCustomer*cs>{returncs->ID;}intget_room_number<structCustomer*cs>{returncs->room_number;}intget_day<structCustomer*cs>{returncs->day;}//***********************************************************************************structRoomroom[60];structCustomer*customer[60];//diancaistructcai/*cai結(jié)構(gòu)體實現(xiàn)對菜品已點(diǎn)份數(shù)、名稱、原材料的記錄*/{ intfenshu; charname[50];intuse; intprice;};structList/*該線性表實現(xiàn)對菜品原材料的剩余量的記錄,線性表[i]對應(yīng)菜品的點(diǎn)餐菜單編碼*/{ ElemType*list;intsize; intMaxSize;};/*以下為線性表的函數(shù)*/voidInitList<structList*L,intms>{ if<ms<=0>{printf<"ms值非法!\n">;exit<1>;} L->MaxSize=ms; L->list=malloc<ms*sizeof<ElemType>>; if<!L->list> { printf<"動態(tài)存儲分配失??!">; exit<1>; }L->size=0;}voidagainMalloc<structList*L>{ ElemType*p=realloc<L->list,2*L->MaxSize*sizeof<ElemType>>; if<!p>{ printf<"分配存儲空間失??!">; exit<1>; }L->list=p;L->MaxSize=2*L->MaxSize;}voidInsertLastList<structList*L,ElemTypex>{ if<L->size==L->MaxSize> againMalloc<L>; L->list[L->size]=x; L->size++;}/*表格函數(shù)*/intcddayin<structcaia[]>{ inti=0,j=0; for<i=0;i<30;i++> {if<a[i].fenshu>0> j++;} if<j!=0> { printf<"已點(diǎn)菜/酒品編號已點(diǎn)菜品名稱已點(diǎn)份數(shù)/瓶數(shù)價格\n">; for<i=0;i<30;i++> if<a[i].fenshu>0> {printf<"%5d%10s%14d%d¥\n",i,a[i].name,a[i].fenshu,a[i].fenshu*a[i].price>; caijia=caijia+a[i].fenshu*a[i].price; } printf<"您好,您點(diǎn)餐價格合計=%d¥\n",caijia>; }returncaijia;if<j==0> printf<"顧客尚未點(diǎn)餐,無法進(jìn)行菜單打印!\n">;}voidycliao<structList*yuan,structcaia[]>{ inti=1,p=0,k=0,num; for<i=0;i<30;i++> { do{ p=a[i].use%100; yuan->list[p]=yuan->list[p]-a[i].fenshu; a[i].use=a[i].use/100; }while<a[i].use!=0>; } printf<"請輸入房間號:">; scanf<"%d",&num>; if<num=101&&102&&103&&104&&105>{ printf<"|||\n">; printf<"|原材料余量|酒品余量|\n">; printf<"|||\n">; printf<"|10.雞肉=%3d11.豬肉=%3d12.魚肉=%3d|50.雪花啤酒=%3d|\n",yuan->list[10],yuan->list[11],yuan->list[12],yuan->list[50]>; printf<"|13.黃瓜=%3d14.土豆=%3d15.豆腐=%3d|51.燕京啤酒=%3d|\n",yuan->list[13],yuan->list[14],yuan->list[15],yuan->list[51]>; printf<"|16.茄子=%3d17.青椒=%3d18.牛肉=%3d|52.二鍋頭=%3d|\n",yuan->list[16],yuan->list[17],yuan->list[18],yuan->list[52]>; printf<"|19.大蔥=%3d20.鮮鴨血=%3d21.花生=%3d||\n",yuan->list[19],yuan->list[20],yuan->list[21]>; printf<"|22.花椒=%3d23.醬=%3d24.胡蘿卜=%3d||\n",yuan->list[22],yuan->list[23],yuan->list[24]>; printf<"|25.辣椒=%3d26.芹菜=%3d27.豆皮=%3d||\n",yuan->list[25],yuan->list[26],yuan->list[27]>; printf<"|||\n">; printf<"|||\n">;}}voiddiancai<structcaia[],structCustomer*cs>{ intp=0,wep=0;/*printf<"請輸入房間號\n">;scanf<"%d",num>; for<i=0;i<60;i++> if<cs->room[n].number==num>*/ do{ printf<"|||\n">; printf<"|菜品<輸入-1確認(rèn)并結(jié)束點(diǎn)餐>|酒品|\n">; printf<"|||\n">; printf<"|1.紅燒獅子頭2.飄香桂魚3.京醬肉絲21.長城干紅|\n">; printf<"|4.爆炒竹雞5.水煮魚6.日本豆腐|22.喜力啤酒|\n">; printf<"|7.夫妻肺片8.拍黃瓜9.蓮子羹|23.人頭馬|\n">; printf<"|||\n">; printf<"|||\n">; scanf<"%d",&p>; system<"CLS">;if<p>=1&&p<=9> { printf<"||\n">; printf<"|份數(shù)|\n">; printf<"||\n">; printf<"|1.一份2.兩份|\n">; printf<"|3.三份4.其他請直接輸入|\n">; printf<"||\n">; printf<"||\n">; scanf<"%d",&wep>; if<wep>50> {system<"CLS">;printf<"您輸入的值異?;蜻^大,請您檢查輸入的值!\n">;continue;}/*防止誤輸入*/ elseif<wep<=50> {a[p].fenshu+=wep; system<"CLS">; } } elseif<p>=21&&p<=23> { printf<"||\n">; printf<"|酒品數(shù)量|\n">; printf<"||\n">; printf<"|1.一瓶2.兩瓶3.三瓶4.其他瓶數(shù)請直接輸入|\n">; printf<"||\n">; printf<"||\n">; scanf<"%d",&wep>; if<wep>50> {system<"CLS">;printf<"您輸入的值異?;蜻^大,請您檢查輸入的值!\n">;continue;}/*防止誤輸入*/ elseif<wep<=50> { a[p].fenshu+=wep; system<"CLS">; } } elseif<p!=-1> printf<"對不起,你輸入的編碼沒有對應(yīng)菜品,請重新輸入!\n">; }while<p!=-1>; system<"CLS">; cs->caijia=cddayin<a>;}voidycldayin<structListyuan,structcaia[]>{ charl='\0'; printf<"顯示原材料余量?〔Y/N\n">; l=getch<>; if<l=='Y'||l=='y'> {system<"CLS">; ycliao<&yuan,a>;} else { system<"CLS">; printf<"\n\n\n\n">;}}intdiancai1<structCustomer*cs>{ inti=0; charl='\0'; structListyuan;/*yuan前不用加"*"*/ structcaia[60]={ {0,"\0",0}, {0,"宮爆雞丁",10131421,15},{0,"飄香桂魚",1124,14},{0,"京醬肉絲",112327,16}, {0,"爆炒竹雞",141617,10},{0,"水煮魚",122225,50},{0,"日本豆腐",152225,11}, {0,"夫妻肺片",18212625,17},{0,"拍黃瓜",13252223,8},{0,"蓮子羹",20,20}, {0,"\0",0},{0,"\0",0},{0,"\0",0}, {0,"\0",0},{0,"\0",0},{0,"\0",0}, {0,"\0",0},{0,"\0",0},{0,"\0",0}, {0,"\0",0},{0,"\0",0}, {0,"長城干紅",50,300},{0,"喜力啤酒",51,20},{0,"人頭馬",52,500}, {0,"\0",0},{0,"\0",0},{0,"\0",0}, {0,"\0",0},{0,"\0",0},{0,"\0",0}}; InitList<&yuan,60>; for<i=0;i<60;i++> InsertLastList<&yuan,100>;//+rand<>%50 printf<"\n\n\n\n\n\n\n\n">; printf<"||\n">; printf<"|歡迎您開始點(diǎn)餐!|\n">; printf<"||\n">; Sleep<2500>; system<"CLS">; diancai<a,cs>;/*點(diǎn)餐函數(shù),開始點(diǎn)餐吧!*/ ycldayin<yuan,a>; printf<"\n\n\n\n">; printf<"||\n">; printf<"|歡迎再次點(diǎn)餐,祝您用餐愉快!|\n">; printf<"||\n">; printf<"\n\n\n\n\n\n">; return0;}intCCustomer<structCustomer*cs>{printf<"請您輸入顧客的姓名\n">;scanf<"%s",cs->name>;printf<"請您輸入顧客的身份證號碼<18位數(shù)字>\n">;scanf<"%s",cs->ID>;cs->pay=cs->change=cs->day=0;return9;}intFCustomer<>{printf<"該顧客退房成功!">;return8;}intmain<>//程序入口從這里開始運(yùn)行{//system<"color3E">;charchoice='1'; system<"color3E">;initial_room<>;//初始化60個房間的信息,分三個等級welcome<>;//驗證用戶登陸,登陸成功顯示歡迎信息while<choice=='1'>{enter<>;//根據(jù)用戶的選擇執(zhí)行不同的功能printf<"\n">;printf<"繼續(xù)使用本系統(tǒng)請按\"1\",退出請按\"2\"!">;fflush<stdin>;scanf<"%c",&choice>;printf<"\n">;}return0;}//系統(tǒng)登陸界面***********************************************************************intwelcome<>//驗證用戶登陸,登陸成功顯示歡迎信息{charname[10],code[20];printf<"請輸入用戶名和密碼:\n">;printf<"用戶名:">; scanf<"%s",name>;//scanf<"%s%s",name,code>;printf<"密碼:">; scanf<"%s",code>;while<<strcmp<name,"Joe">!=0>||<strcmp<code,"Mercy">!=0>>{printf<"用戶名或密碼輸入有誤,請重新輸入!\n">;scanf<"%s%s",name,code>;}printf<"\n">;printf<"\n">;printf<"▲***************************▲\n">;printf<"△歡迎使用酒店管理系統(tǒng)!△\n">;printf<"▲***************************▲\n">;printf<"\n">;return7;}//系統(tǒng)入口***************************************************************************intenter<>{intkind_of_service;printf<"請選擇服務(wù)類別:入住、退房還是查詢?\n">;printf<"1->入住2->退房3->查詢4->點(diǎn)菜">;scanf<"%d",&kind_of_service>;if<<kind_of_service>4>||<kind_of_service<1>>{printf<"您的輸入有誤,請重試!\n">;scanf<"%d",&kind_of_service>;}else{switch<kind_of_service>{case1:check_in<>;break;case2:check_out<>;break;case3:inquire<>;break;case4: diancai1<>; break;}}return6;}//入住登記***************************************************************************intcheck_in<>{intpay;{introom_standard,day;customer[i]=<structCustomer*>malloc<sizeof<structCustomer>>;CCustomer<customer[i]>;printf<"請您選擇預(yù)定房間的標(biāo)準(zhǔn):\n">;printf<"1.單人間/天150元\n2.雙人間/天200元\n3.標(biāo)準(zhǔn)間/天300元\n">;scanf<"%d",&room_standard>;printf<"請輸入住宿天數(shù)\n">;scanf<"%d",&day>;set_day<customer[i],day>;switch<room_standard>{intn;case1:pay=day*150;//set_pay<customer[i],pay>;printf<"請收房費(fèi)%d元整!\n",pay>;for<n=0;n<20;n++>{if<room[n].state==0>{printf<"入住房間號碼為:%d\n",room[n].number>;room[n].state=2;set_room_number<customer[i],room[n].number>;break;}}break;case2:pay=day*200;printf<"請收房費(fèi)%d元整!\n",pay>;for<n=20;n<40;n++>{if<room[n].state==0>{printf<"入住房間號碼為:%d\n",room[n].number>;room[n].state=2;set_room_number<customer[i],room[n].number>;break;}}break;case3:pay=day*300;printf<"請收房費(fèi)%d元整!\n",pay>;for<n=40;n<60;n++>{if<room[n].state==0>{printf<"入住房間號碼為:%d\n",room[n].number>;room[n].state=2;set_room_number<customer[i],room[n].number>;break;}}break;}i++;}return4;}//退房結(jié)算***************************************************************************intcheck_out<>{charname2[13],id2[19];intstandard,j,room_number,day1,day2,day;printf<"請輸入要退房的顧客姓名和身份證號碼:\n">;scanf<"%s%s",name2,id2>;printf<"請輸入該顧客實住天數(shù):\n">;scanf<"%d",&day2>;for<j=0;j<i;j++>{if<<strcmp<get_name<customer[j]>,name2>==0>&&<strcmp<get_ID<customer[j]>,id2>==0>>{characcount;room_number=get_room_number<customer[j]>;standard=room_number/100;day1=get_day<customer[j]>;day=day1-day2;switch<standard>{case1:printf<"顧客的房間號是%d:為單人間,每天150元\n",room_number>;printf<"實際住房消費(fèi)%d元整!\n",day2*150>;printf<"\n">;if<day2*150+caijia<pay>printf<"請退給該顧客%d元整!\n",day*150>;if<day2*150+caijia>pay>printf<"請補(bǔ)收該顧客住房費(fèi)%d元整!\n",day2*150+caijia-pay>;printf<"用餐費(fèi)用為:%d\n",caijia>; printf<"消費(fèi)總錢數(shù)為%d\n",day2*150+caijia>;break;case2:printf<"顧客的房間號是%d:為雙人間,每天200元%d\n",room_number>;printf<"實際住房消費(fèi)%d元整!\n",day2*200>;printf<"\n">;if<day2*200+caijia<pay>printf<"請退給該顧客%d元整!\n",day*150>;if<day2*200+caijia>pay>printf<"請補(bǔ)收該顧客住房費(fèi)%d元整!\n",day2*200+caijia-pay>;printf<"用餐費(fèi)用為:%d\n",caijia>; printf<"消費(fèi)總錢數(shù)為%d\n",day2*200+caijia>;break;case3:printf<"顧客的房間號是%d:為標(biāo)準(zhǔn)間,每天300元%d\n">;printf<"實際住房消費(fèi)%d元整!\n",day2*300>;printf<"\n">;if<day2*300+caijia<pay>printf<"請退給該顧客%d元整!\n",day*300>;if<day2*150+caijia>pay>printf<"請補(bǔ)收該顧客住房費(fèi)%d元整!\n",day2*300+caijia-pay>;printf<"用餐費(fèi)用為:%d\n",caijia>; printf<"消費(fèi)總錢數(shù)為%d\n",day2*300+caijia>;break;}//printf<"用餐費(fèi)用為:%d\n",caijia>;//printf<"實際應(yīng)收總價為">printf<"退房核算清楚,請按1:">;fflush<stdin>;scanf<"%c",&account>;if<account=='1'>{intk;for<k=0;k<80;k++>{if<room[k].number==get_room_number<customer[j]>>room[k].state=0;}i--;for<;j<i;j++>{customer[j]=customer[j+1];}free<customer[i]>;FCustomer<>;}}}return3;}//信息查詢***************************************************************************intinquire<>{charinquire_choice;printf<"房間信息查詢請按1,顧客信息查詢請按2:">;fflush<stdin>;scanf<"%c",&inquire_choice>;if<inquire_choice=='1'>
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津市河西區(qū)實驗中學(xué)2024-2025學(xué)年高三年級第二次四校聯(lián)考物理試題含解析
- 江西省鷹潭市2025屆第二學(xué)期高三4月綜合測試(二)英語試題試卷含解析
- 寧波市鎮(zhèn)海區(qū)重點(diǎn)中學(xué)2025年初三中考熱身練習(xí)試題英語試題試卷含答案
- 蘭州工業(yè)學(xué)院《誤差理論與測量平差基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇省重點(diǎn)中學(xué)2025年普通高中高三第一次診斷性測試物理試題含解析
- 長沙航空職業(yè)技術(shù)學(xué)院《客戶關(guān)系管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 遼寧省阜新二中2025年高三畢業(yè)生復(fù)習(xí)統(tǒng)一檢測試題生物試題含解析
- 山東省濟(jì)寧市市中學(xué)區(qū)2025屆初三下第二次測試(化學(xué)試題理)試題含解析
- 遼寧省盤錦市大洼區(qū)市級名校2024-2025學(xué)年初三中考沖刺預(yù)測卷(六)生物試題含解析
- 上海外國語大學(xué)《英語教學(xué)評價》2023-2024學(xué)年第二學(xué)期期末試卷
- 個人所得稅申報實操講解課件
- 2023年六安城市建設(shè)投資有限公司招聘筆試題庫及答案解析
- 學(xué)校食堂廉政風(fēng)險責(zé)任書
- 施工方案審批意見及修改回復(fù)單
- 紫外線消毒燈使用登記表
- 新浙教版七年級上冊初中科學(xué) 第2節(jié) 質(zhì)量的測量 教學(xué)課件
- 中華人民共和國招標(biāo)投標(biāo)法(PPT)
- 統(tǒng)編版四年級道德與法治下冊第8課《這些東西哪里來》精美課件(含視頻)
- 停車場應(yīng)急預(yù)案
- 手術(shù)質(zhì)量與安全分析報告模板
- 研究生在讀證明.docx
評論
0/150
提交評論