![C語言試驗分析報告-酒店管理系統(tǒng)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/18bf5583-d0b1-44ff-9d7c-61c49ad68070/18bf5583-d0b1-44ff-9d7c-61c49ad680701.gif)
![C語言試驗分析報告-酒店管理系統(tǒng)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/18bf5583-d0b1-44ff-9d7c-61c49ad68070/18bf5583-d0b1-44ff-9d7c-61c49ad680702.gif)
![C語言試驗分析報告-酒店管理系統(tǒng)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/18bf5583-d0b1-44ff-9d7c-61c49ad68070/18bf5583-d0b1-44ff-9d7c-61c49ad680703.gif)
![C語言試驗分析報告-酒店管理系統(tǒng)_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/18bf5583-d0b1-44ff-9d7c-61c49ad68070/18bf5583-d0b1-44ff-9d7c-61c49ad680704.gif)
![C語言試驗分析報告-酒店管理系統(tǒng)_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/18bf5583-d0b1-44ff-9d7c-61c49ad68070/18bf5583-d0b1-44ff-9d7c-61c49ad680705.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、C語言實驗報告 - 酒店管理系統(tǒng)作者: 日期:武漢科技大學C 語言程序設計課程設計2015 年 6 月 23 日一、 總體設計1、程序的總體設計(1) 程序總體設計思路: 酒店房間登記管理系統(tǒng),實現(xiàn)的是房間登記與管理(包括登記入住、查詢) 為了體現(xiàn)模塊化設計,把所有要實現(xiàn)的功能做成函數(shù),采用分步實施的方法 逐步細化。具體分布實施有以下 5 步。1,編寫模塊2,定義實現(xiàn)個功能模塊所要函數(shù)3,編寫各個函數(shù)4,理清思路,逐步修改5,調(diào)試整個程序。核心部分是各個函數(shù) :1、歡迎界面函數(shù):通過 switch 進入不同界面。2、登記入住函數(shù):使用戶在入住前登記個人信息,選擇房間信息3、查詢?nèi)胱∏闆r函數(shù):顧
2、客可通過兩種方式查找到自己的個人信息。4、查詢當前費用函數(shù):顧客可隨時查詢所用費用5、結(jié)賬退房函數(shù):所有信息清零。2、數(shù)據(jù)結(jié)構(gòu) 此系統(tǒng),選擇用結(jié)構(gòu)體存放不同類型的數(shù)據(jù),房間信息。在這過程中由于對 指針的運用與操作還不熟練,不方便修改,所以沒用指針。(1)創(chuàng)建房間信息結(jié)構(gòu)體/* 結(jié)構(gòu)體 hotel 房間號、房間種類、客戶姓名、身份證號、入住狀態(tài)、實際收房 費,押金等 */ struct hotelint num; /*房間號 */int kind; /*房間種類 1(表示單人間) 2(表示雙人間) */char name20; /*姓名 */char ID19; /* 身份證號 */int fl
3、ag; /*flag 0 (表示有人入住) 0(表示無人入住) */int dingjia; /*房間定價 */int shiji; /* 實際繳納費用 */roomM;3、函數(shù)原型聲明void welcome(); /主界面int dengji(); /登記入住函數(shù)int now_room(); /查詢當前房間入住情況int now_feiyong(); /查詢當前費用int tuifang(); /結(jié)賬退房int find(); /查詢當前入住人數(shù)int kfxinxi(); / 客戶信息void jiezhang(); / 結(jié)賬付款 int quit(); / 退出函數(shù) int mima
4、();/密碼 / void save(); /保存 /、詳細設計1、主函數(shù)設計主函數(shù)說明:為滿足顧客登記入住,查詢房間入住情況,查詢當前費用,結(jié)賬退 房等功能的實現(xiàn), 設計此函數(shù)。 開始進入歡迎界面讓顧客選擇, 入顧客所選界面。開始進入所選功能 函數(shù)結(jié)束主函數(shù)流程圖2、子函數(shù)流程圖(1)登記入住函數(shù)說明:登記入住流程圖(2)查詢房間入住情況: 2種查詢方式( 1. 按房號查詢 2. 客戶信息查 詢),最終輸出出現(xiàn)歡迎界面測試 1:選擇選項 1,入住登記 “1”按提示輸入信息(如: 1-單人間, 1-房間號,陳誠,200元,登記成功)測試 2:選擇選項 2
5、,查詢房間入住情況 “1”按房間號查詢, 1、房間號 出現(xiàn)剛登記的個人信息2、房間號 該房為空房“2” 按客戶信息查詢,身份證號出現(xiàn)個人信 “3” 退出,返回歡迎界面測試 3:選擇選項 3,查詢客戶當前費用 “1”號房間,當前費用 100 元測試 4:選擇選項 4,結(jié)賬退房 “2”號房間,空房,重輸 “1”號房間,應支付 100 元,退房成功四、小結(jié)此程序滿足課程設計要求,實現(xiàn)登記、查詢、結(jié)賬等操作,并對不同房間實 施不同收費標準,計算總費用等功能。程序優(yōu)點:整個程序界面友好,與顧客有良好的界面交流。程序雖簡單,但功能齊全。程序缺點:(1)數(shù)據(jù)結(jié)構(gòu)單一。
6、主要是學習 c 語言時間短,知識程度不深,不夠全面, 知道的不多。(2)不會調(diào)用系統(tǒng)時間。在做課設的過程中,我對 c語言有了更深入的了解。 它很考察邏輯的嚴密性, 思路條理要清晰是很重要的, 它包含你編寫程序的大致方向。 嚴謹認真的態(tài)度也 不可或缺。 調(diào)試程序過程中也可以提升自己的理解已經(jīng)加深自身熟練度。 遇到問 題要想方設法將它解決,看書找資料,請教同學,與同學討論,從這些方面我又 可以學會合作。源碼:/主函數(shù) /#define M 40#include #include #include #includedingyi.h #includejiegouti.h #includefind.h
7、#includekfxinxi.h #includezuizhongfeiyong.h #includequit.h #includezhujiemian.h #includedengji.h #includedangqianruzhu.h #includedangqianfeiyong.h #includetuifang.h #includemima.h #includesave.h #includeduru.h/*主函數(shù) */ void main() int i,j;mima(); / 密碼/ duru(); /讀入數(shù)據(jù) / welcome(); /載入主界面 / scanf(%d,&i)
8、;switch(i)case 1:j=dengji();break;case 2:j=now_room();break;case 3:j=now_feiyong();break;case 4:j=tuifang();break;case 5:exit(0);default:quit();while(j!=0) / 操作結(jié)束可返回主界面 / welcome(); scanf(%d,&i); switch(i) case 1:j=dengji();break;case 2:j=now_room();break;case 3:j=now_feiyong();break;case 4:j=tuifan
9、g();break;case 5:exit(0);default: quit();/*登記入住 */int dengji()int i,j,a,k,n;system(cls);nn);printf(nn 登記入住 printf( 請選擇房間類型 :nn);printf(1.單人間 2.雙人間 nn);scanf(%d,&n);switch(n)case 1:printf(現(xiàn)在空閑的單人房間有 : n);for(i=1,j=0;i=M;i=i+2)if(roomi-1.flag=0)printf(%dt,i);j+;if(j%5=0)printf(n);10 / 控制每行輸出個數(shù) / print
10、f(安排客戶想要的房間 : ); scanf(%d,&k);while(k%2=0)printf(! 房號輸入錯誤,請重新輸入 n);scanf(%d,&k);roomk-1.kind=1;roomk-1.num=k;printf(n 請輸入客戶的姓名 : );scanf(%s,);printf(n 請輸入客戶的身份證號 : );scanf(%s,roomk-1.ID);while(strlen(roomk-1.ID)!=18)printf(! 輸入有誤,請重新輸入 n);scanf(%s,roomk-1.ID); roomk-1.dingjia=100;printf(
11、nn 應當繳納房費 %d 元,roomk-1.dingjia); printf(nn 實際繳納的金額為 : ); scanf(%d,&roomk-1.shiji);while(roomk-1.shijiroomk-1.dingjia) printf(ttnn! 輸入有誤,請重新輸入 !nn); printf(nn 實際繳納的金額 : );scanf(%d,&roomk-1.shiji);printf(nn 是否確認入住 (1-是 2-否)n); scanf(%d,&a);while(a!=1&a!=2)printf(nntt! 輸入有誤,請重新輸入 : ); scanf(%d,&a);if(a
12、=1) roomk-1.flag=1;printf(n 已成功登記 !nn);save();break;case 2:printf(現(xiàn)在空閑的雙人房間有 : nn);for(i=2,j=0;i=M;i=i+2)if(roomi-1.flag=0)printf(%dt,i);j+;if(j%5=0)printf(nn); / 控制每行輸出個數(shù) /11printf(安排客戶想要的房間 : );scanf(%d,&k);while(k%2!=0)printf(! 房號輸入錯誤,請重新輸入 :n);scanf(%d,&k);roomk-1.kind=2;roomk-1.num=k;printf(n 請
13、輸入客戶的姓名 : ); scanf(%s,); printf(n 請輸入客戶的身份證號 : ); scanf(%s,roomk-1.ID);while(strlen(roomk-1.ID)!=18)printf(! 輸入有誤,請重新輸入 :n); scanf(%s,roomk-1.ID);roomk-1.dingjia=200;printf(nn 應當繳納房費 %d 元 ,roomk-1.dingjia); printf(nn 實際繳納的金額為 : ); scanf(%d,&roomk-1.shiji);while(roomk-1.shijiroomk-1.dingj
14、ia) printf(ttnn! 輸入有誤,請重新輸入 :nn); printf(nn 實際繳納金額為 : ); scanf(%d,&roomk-1.shiji); printf(nn 是否確認入住 (1-是 2-否)n);scanf(%d,&a);while(a!=1&a!=2)printf(nntt! 輸入有誤,請重新輸入 : ); scanf(%d,&a);if(a=1) roomk-1.flag=1;printf(n 已成功登記 !nn);save();break;default: quit();quit();return 1;/讀取函數(shù) /12void duru()FILE *fp;
15、int i;if(fp=fopen(kf_dat,rb)=NULL)printf(cannot open file n);return ;for(i=0;iM;i+)fread(&roomi,sizeof(struct hotel),1,fp);fclose(fp);/* 查詢?nèi)胱∪藬?shù) */int find()int number=0;int i;for(i=0;i4|i1)printf(nntt 輸入有誤,請重新輸入 : ); scanf(%d,&i);else if(i=1)printf(nn 請輸入房間號 : ); /按房號查詢scanf(%d,&j);if(roomj-1.flag=0
16、)printf(nn 此房間無人住 nn);else15printf( 您的個人信息為 : );kfxinxi(j-1);break;else if(i=2)printf(nn 請輸入您的身份證號 : ); /按客戶信息查詢scanf(%s,a);while(1)for(k=0;kM;k+) if(strcmp(a,roomk.ID)=0)break; if(k!=M) printf(nn 您的個人信息為 : ); kfxinxi(k);break;elseprintf(ttnn1. 輸入有誤,請重新輸入 2.不存在此 人信息 ,退出 nn);scanf(%d,&s);if(s=1)print
17、f(nn 請輸入您的身份證號 : ); scanf(%s,a); else return(1);break; else if(i=3)break;elseprintf(ttnn1. 輸入有誤 ,請重新輸入 nn);printf(tt1. 按房號查詢 nntt2. 按客戶信息 查詢 nntt3. 按入住時間查詢 nntt4. 退出 );printf(nn 請選擇 : );scanf(%d,&i);quit(); /*退出函數(shù) */int quit()int y;printf( 是否需要返回主界面 ? 1-是 2-否nn); scanf(%d,&y);if(y=1)16welcome();else
18、printf(* 歡迎下次光臨武科大酒店 *!nn); return 1; /保存函數(shù) / void save()FILE *fp;int i; if(fp=fopen(kf_dat,wb)=NULL) printf(cannot open file n); return ; for(i=0;i0)printf( 找還顧客 %d 元n,yu);else printf( 顧客應再支付 %d 元 n,yu*(-1);/*結(jié)賬退房 */ int tuifang() char zhonglei30;int n,m;system(cls);printf(nn 結(jié)賬退房 nn); if(find()=0)
19、printf( 房間都是空的 !nn); else17printf(請輸入需要退房的房號 : );scanf(%d,&n);if(nM|n1)printf(nn 輸入有誤 ,請重新輸入 :,M);scanf(%d,&n);if(roomn-1.flag=0)printf( 空房 ,無法辦理退房 !nn);switch(roomn-1.kind)case 1:strcpy(zhonglei,單人間 );break;case 2:strcpy(zhonglei,雙人間 );break;printf( 房間號 : %dn 房間類型 : %sn 客人姓名 : %sn 身份證號: %sn,roomn-1
20、.num,zhonglei,,roomn-1.ID);printf(nt 房間定價為 : %dn,roomn-1.dingjia);if(roomn-1.flag=1)shoufei(roomn-1.dingjia,roomn-1.shiji);printf(nn 是否退房 (1.是 2.否) : );scanf(%d,&m);if(m=1)roomn-1.flag=0;strcpy(,0);roomn-1.shiji=0;printf(nn 您已成功退房,歡迎下次光臨 !nn); save();quit();return 1;/*主界面 */void welcome()int n;n=find(); system(color 4F);18printf();printf( 歡迎進入武科大酒店管理系 統(tǒng) n);printf(t printf(t printf(t printf(t printf(t 1. 入住登記 nn);/dengji()/2. 查詢當前房間入
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境管理在企業(yè)發(fā)展中的作用研究
- 生產(chǎn)流程優(yōu)化基于數(shù)據(jù)的決策支持方案
- 珠寶鑒定與法律法規(guī)關系解析
- 安保安全措施方案
- 2023九年級化學下冊 第九章 現(xiàn)在生活與化學9.4 化學物質(zhì)與健康第3課時 治病用的藥品、防范有害化學物質(zhì)、保護身體健康說課稿 科粵版
- Unit1 Making friends Part A Letters and sounds(說課稿)-2024-2025學年人教PEP版(2024)英語三年級上冊
- 3 學習有方法 說課稿-2024-2025學年道德與法治三年級上冊統(tǒng)編版
- Unit 3 Fascinating parks Discover Useful Structures 說課稿 -2024-2025學年高中英語人教版(2019)選擇性必修第一冊
- 《2 拉拉手交朋友》說課稿-2023-2024學年道德與法治一年級上冊統(tǒng)編版
- 2023六年級數(shù)學上冊 三 分數(shù)除法 1分數(shù)除法第1課時 倒數(shù)的認識說課稿 西師大版
- 電力服務收費標準附表
- 小學主題班會教學設計-《給你點個“贊”》通用版
- 【教學創(chuàng)新大賽】《系統(tǒng)解剖學》教學創(chuàng)新成果報告
- 賽意EAM設備管理IOT解決方案
- 氫氰酸安全技術說明書MSDS
- 動物檢疫技術-動物檢疫的范圍(動物防疫與檢疫技術)
- 比較思想政治教育學
- 醫(yī)用內(nèi)窺鏡冷光源產(chǎn)品技術要求深圳邁瑞
- 砌墻磚和砌塊檢測作業(yè)指導書
- 護理教學查房評分標準
- GB/T 23505-2017石油天然氣工業(yè)鉆機和修井機
評論
0/150
提交評論