版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、信息科學(xué)與工程學(xué)院課 程設(shè)計 報告書專業(yè):通信工程課程設(shè)計名稱:程序設(shè)計實踐題目:簡易賓館客房管理系統(tǒng) TOC o 1-5 h z 班級:設(shè) 計者:學(xué)號:指導(dǎo)教師:完成時間:重慶交通大學(xué)信息科學(xué)與工程學(xué)院課程設(shè)計任務(wù)書課程程序設(shè)計實踐班級指導(dǎo)教師題目簡易賓館客房管理系統(tǒng)同組人數(shù)1人(代碼量不少于300行)2.主要功能包括:管理信息的錄入、修改、增加、/.數(shù)據(jù)用文件存儲;.主要操作采用菜單方式;.數(shù)據(jù)輸入有容錯功能 (比如成績:0-100分,刪除、查詢、統(tǒng)計、輸出等;性別:“男”、“女”,日期型數(shù)據(jù)年、月、日的限制等 );5.分別用鏈表和數(shù)組實現(xiàn)所要求的功能。設(shè)計報告主要包括內(nèi)容(參見后面的格式
2、):.系統(tǒng)的功能需求及分析.數(shù)據(jù)結(jié)構(gòu)及主要算法設(shè)計說明報 告 書 要 求.系統(tǒng)總體結(jié)構(gòu).系統(tǒng)實現(xiàn)及主要代碼.系統(tǒng)功能測試.設(shè)計體會要求:?學(xué)生完成課程設(shè)計后,每個同學(xué)均應(yīng)提交課程設(shè)計報告及軟件;?設(shè)計報告要求文字通暢,排版規(guī)范;?設(shè)計報告文字原則上不少于3000字(程序代碼除外),并裝訂成冊。 版面要求.題目用黑體三號,段后距 18磅(或1行),居中對齊;.標(biāo)題用黑體四號,段前、段后距6磅(或行);.正文用小四號宋體,行距為固定值“20”,程序代碼用固定值“ 15”.標(biāo)題按“一”、“”、“1”、“”順序編號。上 機(jī)周次一二三四五六日時 問 安第17周第18周排指導(dǎo)地 點及考 核時間1、指導(dǎo)地點
3、:2、考核時間:重慶交通大學(xué)信息學(xué)院課程設(shè)計評分表序號項目評分標(biāo)準(zhǔn)及說明評分1學(xué)生自評分(20%)按任務(wù)書的要求,學(xué)生根據(jù)任務(wù)完成情況及質(zhì)量t我評分。多人一組共同完成者,19-20分不超過1人,17-18不超過2人,由組長評分(多人一組獨立完成者按獨立完成定)。2紀(jì)律及平時成績 (10%)按規(guī)定時間到實驗室完成實驗及綜合實驗,每缺1次實驗扣2分,缺4次及以上不得分。3系統(tǒng)演示(功能) 及答辯(40%)根據(jù)學(xué)生PPT匯報、系統(tǒng) 演示及回答問題情況,由 答辯組(老師)給出答辯等 級(直接在此評分表中打),指導(dǎo)教師按等級 相應(yīng)分值打分答辯等級分值A(chǔ)+39-40A38-A36-37B+34-35B32
4、-33B-30-31C+28-29C26-27C-24-25D0-234項目設(shè)計報告(30%)根據(jù)學(xué)生完成的項目設(shè)計 報告書情況,由指導(dǎo)教師 給定等級(直接在此評分表 中打“)及成績(特別 提醒:設(shè)計報告相同者均 記0分)答辯等級分值A(chǔ)+30A28-29AB+2725-26B23-24B-21-22C+20C19C-18D0-17指導(dǎo)教師:總分:簡易賓館客房管理系統(tǒng)設(shè)計報告一、系統(tǒng)的功能需求及分析(一)設(shè)計要求:.主要功能包括:管理信息的錄入、修改、增加、刪除、查詢、統(tǒng)計、輸出等;.數(shù)據(jù)用文件存儲;.主要操作采用菜單方式;.數(shù)據(jù)輸入有容錯功能(比如成績:0-100分,性別:“男”、“女”,日期
5、型數(shù) 據(jù)年、月、日的限制等);.分別用鏈表和數(shù)組實現(xiàn)所要求的功能。(二)具體設(shè)計思路:簡易賓館雷理系舞1.針對我設(shè)計的簡易賓館管理系統(tǒng),其所需 實現(xiàn)的具體功能如下:(1)登記入?。惠抛屑急E系 比縣用生睡r斗部Tri上入1 Z 才 $ E H(2)信息修改;(3)信息查找;(4)退房登記;(5)入住情況統(tǒng)計輸出;(6)基本數(shù)據(jù)文件存儲;2.對于要求的容錯功能,主要是在如下地方:(1)入住登記時判斷輸入客人身份證號碼是否為 18位;(2)入住登記時判斷輸入電話號碼是否為 11位;(3)入住登記時判斷是否還有空房問;(4)入住情況統(tǒng)計輸出時判斷是否入住客人;(5)菜單選擇的時候必須輸入相應(yīng)的數(shù)字
6、(如輸入 8便會進(jìn)行報錯);(6)選擇房型的時候必須輸入相信的數(shù)字(同上報錯);二、數(shù)據(jù)結(jié)構(gòu)及主要算法設(shè)計說明(一)數(shù)據(jù)結(jié)構(gòu)1.數(shù)組所需要存儲的基本信息為:客人姓名,身份證號碼,手機(jī)號碼,入住天數(shù),房 號,已入住房間數(shù);#define Number 60 入住 登記 |n);printf(|2.信息 修改 |n);printf(|3.printf(|4.printf(|5.printf(|6.printf(|0.printf(printf(信息查找|n);退房登記|n);入住情況統(tǒng)計輸出|n);基本數(shù)據(jù)文件存儲|n);退出系統(tǒng) |n);= = = = = = = = = = = = = = =
7、 = = = = = =n);請選擇輸入:);(二)主要算法設(shè)計說明系統(tǒng)總體結(jié)構(gòu)(一)總模塊圖簡易賓館管理系統(tǒng)(二)入 模塊圖住選擇南、住登入住,天數(shù),客輸出房費借房房割,輸入乂住客人相哭信息,如姓名、身份肺號碼、手機(jī)號碼、入住沖且在輸入日昨!要輸入期確的號碼粒數(shù)公信息修首見輸入聯(lián)系我的姓名重、查找信計然后對其 出件他登記時填入的信息。儲查找的聯(lián)系人的信息/兇、0聾A住A ii關(guān)時輸入想要查找的客人的姓名,然后會按格式輸出所4.其他模塊退房登記:輸入客人的姓名,然后退房登記,相當(dāng) 于將客人的信息從管理系統(tǒng)總刪除,房間的的總數(shù)就會減少;入住情況統(tǒng)計輸出:將賓館客房入住情況按格式輸 出;基本數(shù)據(jù)文
8、件存儲:將文件存儲在指定的位置。四、系統(tǒng)實現(xiàn)及主要代碼(一)數(shù)組1.主函數(shù):void main()int cho=0,sel;=0;=40;=20;=0;while(1)Menu();scanf(%d,&cho);if(cho7)printf(您的選擇有誤,請重新選擇! n);else if=Number)printf(客房已全部入?。?n);elseswitch(cho)case 0: exit(0);case 1:printf( 入住房型選擇: n 1.n);scanf(%d,&sel);if(sel3)printf(elseswitch(sel)case 1:biginputInform
9、ation();break;case 2:dblinputInformation();break;case 3:sglinputInformation();break;break;case 2:reviseinformation(); break;case 3:searchinformation(); break;case 4:deleteInformation(); break;case 5:outList(); break;case 6:break;2. 登記入住函數(shù):void biginputInformation()ame);while(1)printf( 身 份 證: );scanf
10、(%s,&.IDnumber);int m;m=strlen.IDnumber);if(m!=18)printf(elsebreak;while(1)printf( 客人電話號碼: );scanf(%s,&.phonenumber);int n;總統(tǒng)房(天)2.豪華房(天)3.普通單間(天)選擇錯誤,請重新選擇! n);您的輸入有誤,請重新輸入! n);n=strlen.phonenumber);if(n!=11)printf(您的輸入有誤,請重新輸入! n);elsebreak;printf( 入 住 天 數(shù): );scanf(%d,&.days);.fee= .days*;printf(應(yīng)
11、收金額為: %n口fee);.roomnumber=+1001;printf( 入住房間房號: %d,.roomnumber);+;+;printf(n);繼續(xù)入住下一總統(tǒng)房? n);繼續(xù); 0: 退出 n);份 證: );printf(printf(1:scanf(%d,&pn);if (pn=0) break;void dblinputInformation()ame);while(1)printf( 身scanf(%s,&.IDnumber);int m=strlen.IDnumber);if(m!=18)printf(您的輸入有誤,請重新輸入! n);elsebreak;while(1
12、)printf( 客人電話號碼: );scanf(%s,&.phonenumber);int n;n=strlen.phonenumber);if(n!=11)printf(您的輸入有誤,請重新輸入! n);elsebreak;printf( 入 住 天 數(shù): );scanf(%d,&.days);.fee= .days*;printf(應(yīng)收金額為: %n口fee);.roomnumber=+2001;printf( 入住房間房號: %d,.roomnumber);+;+;printf(n 繼續(xù)入住下一豪華房? n11:繼續(xù); 0: 退出n);scanf(%d,&pn);if (pn=0) b
13、reak;void sglinputInformation()ame);while(1) printf( 身 份 證: );scanf(%s,&.IDnumber);int m=strlen.IDnumber);if(m!=18)printf(您的輸入有誤,請重新輸入! n);elsebreak;while(1)printf( 客人電話號碼: );scanf(%s,&.phonenumber);int n;n=strlen.phonenumber);if(n!=11)printf(您的輸入有誤,請重新輸入! n);elsebreak;printf( 入 住 天 數(shù): );scanf(%d,&.
14、days);.fee= .days*;printf(應(yīng)收金額為: %n口fee);.roomnumber=+3001;printf( 入住房間房號: %d,.roomnumber);+;+;printf(n 繼續(xù)入住下一普通房? n1:繼續(xù); 0: 退出n);scanf(%d,&pn);if (pn=0) break;查找函數(shù):int search(char rname)for (int i=0;i;i+)if (strcmp(rname,)=0) return i;for ( i=20;i;i+)if (strcmp(rname,)=0) return i;for (
15、 i=40;i=0&i=20&i=40&i=59)i.fee=i.days*;printf(應(yīng)收金額為: %dn,i.fee);return;退房函數(shù):void deleteInformation()char name20;printf( 請輸入要退房的客人姓名: );scanf(%s,name);int i=search(name);if (i=-1)printf( 未找到該客人! n);elseif(i=0)for (int j=i+1;j=20&i=39)for (int j=i+1;j=40&i=59)for (int j=i+1;j ;j+)j-1=j; ; return;統(tǒng)計輸出函
16、數(shù):void outList()(if=0)( printf(n還沒有客人入?。n);) else(printf(賓館房間入住情況n);printf(= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =n);printf( 房號 房型客人姓名身份證號碼電話號碼入住天數(shù)房費(元)n);printf(= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =n);for (int i=0;i;
17、i+)(printf( 10%02d,i+1);printf( 總統(tǒng)房);printf( %-9s,);printf(%-22s,i.IDnumber);printf(%-16s,i.phonenumber);printf(%-5d,i.days);printf(%8dn,i.days*388);)for (int j=20;j;j+)(printf( 20%02d,j+1);printf( 豪華房);printf( %-9s,);printf(%-22s,j.IDnumber);printf(%-16s,j.phonenumber);printf(%-5d,j.day
18、s);printf(%8dn,j.days*288);)for (int k=40;k;k+)(printf( 30%02d,k+1);printf( 普通房);printf( %-9s,);printf(%-22s,k.IDnumber);printf(%-16s,k.phonenumber);printf(%-5d,k.days);printf(%8dn,k.days*188);)printf( = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =n);)信息查找函數(shù):vo
19、id searchinformation()(char name20;printf(請輸入要查找的客人姓名:);scanf(%s,name);int i=search(name);if (i=-1)(printf(未找到該客人!n);)else(printf(您所查找客人信息如下n);printf(nn);printf( 房號 房型 客人姓名 身份證號碼 電話號碼入住天數(shù) 房費 ( 元) n); printf(n);if(i=0)printf( %d,i.roomnumber);printf( 總統(tǒng)房 );printf( %-9s,);printf(%-22s,i.IDnumber
20、);printf(%-1s,i.phonenumber);printf(%-7d,i.days);printf(%n,i.fee);else if(i=20&i=40&inext=NULL;droom=(struct droominformation *)malloc(sizeof(struct droominformation);droom-next=NULL;sroom=(struct sroominformation *)malloc(sizeof(struct sroominformation);sroom-next=NULL;while(1)Menu();scanf(%d,&cho)
21、;switch(cho)case 0:exit(0);case 1:if(all=60)printf(所有房間已全部入?。?n);elseprintf(入住房型選擇:n 1. 總統(tǒng)房(388/天)2. 豪華房(288/天)3. 普通房( 188/ 天)n);scanf(%d,&sel);if(sel3)printf( 選擇錯誤,請重新選擇! );elseswitch(sel)case 1:biginputInformation();break;case 2:dblinputInformation();break;case 3:sglinputInformation();break;break;
22、modifyInformation(); break;searchinformation(); break;deleteInformation(); break;outList(); break;saveInfoToFile(); break;2. 登記入住函數(shù):void biginputInformation() 息統(tǒng)計輸出函數(shù):void outList()struct broominformation * p;struct droominformation * q;struct sroominformation * w;p=broom-next;q=droom-next;w=sroom-n
23、ext;printf(賓 館 房 間 入 住 情 況 n);printf(n);printf( 房號 房型客人姓名身份證號碼電話號碼入住天數(shù) 房費(元)n);printf( = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =n);while (p!=NULL)(printf( %d,p-broomnumber);printf(總統(tǒng)房);printf(%-9s”,p-bname);printf(%-22s,p-bIDnumber);printf(%-16s,p-bphonenumber);
24、printf(%-7d”,p-bdays);printf(%n,p-bfee);p=p-next;while (q!=NULL)(printf( %d,q-droomnumber);printf(豪華房);printf(%-9s”,q-dname);printf(%-22s,q-dIDnumber);printf(%-16s,q-dphonenumber);printf(%-7d”,q-ddays);printf(%n,q-dfee);q=q-next;while (w!=NULL)(printf( %d,w-sroomnumber);printf(普通房);printf(%-9s”,w-sn
25、ame);printf(%-22s,w-sIDnumber);printf(%-16s,w-sphonenumber);printf(%-7d”,w-sdays);printf(%n,w-sfee);w=w-next; printf( = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =n);6.退房登記函數(shù):void deleteInformation() (char name20;struct broominformation * p;struct broominformation *
26、 p1;struct droominformation * q;struct droominformation * q1;struct sroominformation * w;struct sroominformation * w1;printf(請輸入要退房客人姓名:);scanf(%s,name);p=bsearch(name);q=dsearch(name);w=ssearch(name);if (p=NULL) (if (q=NULL)if (w=NULL)printf(未找到該客人! n);else if(p!=NULL)p1=p-next;p-next=p1-next;free(
27、p1);return;else if(q!=NULL)q1=q-next;q-next=q1-next;free(q1);return;else if(w!=NULL)w1=w-next;w-next=w1-next;free(w1);return; return;7. 文件存儲函數(shù):void saveInfoToFile()FILE * fp;if(fp=fopen(d:,wb+)=NULL)printf(Cannot open file strike any key exit!);getchar();exit(1);struct broominformation * p;struct dr
28、oominformation * q;struct sroominformation * w;p=broom-next;q=droom-next;w=sroom-next;while (p!=NULL)fwrite(p,sizeof(struct broominformation),1,fp);p=p-next;while (q!=NULL)fwrite(q,sizeof(struct droominformation),1,fp);q=q-next;while (w!=NULL)fwrite(p,sizeof(struct sroominformation),1,fp);w=w-next;fclose(fp);return;五、系統(tǒng)功能測試(一)菜單功能執(zhí)行測試執(zhí)行程序,出現(xiàn)菜單:選擇入住登記,輸入信息:菜單選擇信息修改:菜單選擇信息查找:菜單選擇入住情況統(tǒng)計輸出:菜單選擇退房登記:(二)容錯功能測試:執(zhí)行菜單選擇有誤:房型選擇輸入錯誤:登記入住輸入信息時身份證號碼和手機(jī)號碼輸入錯誤:查找、修改客人信息時錯誤:入住
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度煤泥資源化利用項目合作協(xié)議書4篇
- 二零二五年度媒體內(nèi)容制作與發(fā)行合作協(xié)議4篇
- 2025年度摩托車配件研發(fā)生產(chǎn)合同規(guī)范4篇
- 二零二五年度白酒原料采購及倉儲物流合同3篇
- 2025年新型生態(tài)農(nóng)業(yè)園區(qū)廠房出租委托服務(wù)合同2篇
- 二零二五年度文化演藝活動經(jīng)紀(jì)代理合同4篇
- 鄭州大學(xué)校園信息化建設(shè)2025年度項目合同2篇
- 二零二五版?zhèn)€人無人機(jī)抵押擔(dān)保租賃合同樣本3篇
- 二零二五版智慧城市基礎(chǔ)設(shè)施建設(shè)項目合同5篇
- 2025年度二手房交易居間服務(wù)合同4篇
- 2024質(zhì)量管理理解、評價和改進(jìn)組織的質(zhì)量文化指南
- 手指外傷后護(hù)理查房
- 油氣回收相關(guān)理論知識考試試題及答案
- 我能作業(yè)更細(xì)心(課件)-小學(xué)生主題班會二年級
- 2023年湖北省武漢市高考數(shù)學(xué)一模試卷及答案解析
- 城市軌道交通的網(wǎng)絡(luò)安全與數(shù)據(jù)保護(hù)
- 英國足球文化課件
- 《行政職業(yè)能力測驗》2023年公務(wù)員考試新疆維吾爾新疆生產(chǎn)建設(shè)兵團(tuán)可克達(dá)拉市預(yù)測試題含解析
- 醫(yī)院投訴案例分析及處理要點
- 燙傷的安全知識講座
- 工程變更、工程量簽證、結(jié)算以及零星項目預(yù)算程序?qū)嵤┘?xì)則(試行)
評論
0/150
提交評論