![客房管理系統(tǒng)C語言課程設(shè)計(jì)[20頁]_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/26/469c608b-13c1-4f2b-a369-4f4e72cb80b6/469c608b-13c1-4f2b-a369-4f4e72cb80b61.gif)
![客房管理系統(tǒng)C語言課程設(shè)計(jì)[20頁]_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/26/469c608b-13c1-4f2b-a369-4f4e72cb80b6/469c608b-13c1-4f2b-a369-4f4e72cb80b62.gif)
![客房管理系統(tǒng)C語言課程設(shè)計(jì)[20頁]_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/26/469c608b-13c1-4f2b-a369-4f4e72cb80b6/469c608b-13c1-4f2b-a369-4f4e72cb80b63.gif)
![客房管理系統(tǒng)C語言課程設(shè)計(jì)[20頁]_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/26/469c608b-13c1-4f2b-a369-4f4e72cb80b6/469c608b-13c1-4f2b-a369-4f4e72cb80b64.gif)
![客房管理系統(tǒng)C語言課程設(shè)計(jì)[20頁]_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/26/469c608b-13c1-4f2b-a369-4f4e72cb80b6/469c608b-13c1-4f2b-a369-4f4e72cb80b65.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C 語 言 課 程 實(shí) 習(xí) 報(bào) 告所 在 院 系 : 班 級(jí) 學(xué) 號(hào) : 姓 名 : 程序 已存檔 : 是 否 指 導(dǎo) 老 師 :趙 曼評(píng) 分 :二零一四年七月目錄1.題目與要求(1)2.功能實(shí)現(xiàn)設(shè)計(jì)(2)2.1總體設(shè)計(jì) (2)2.2詳細(xì)設(shè)計(jì) (2)2.2.1保存函數(shù) (2)2.2.2讀取函數(shù) (3)2.3 功能模塊設(shè)計(jì)(4)2.3.1 注冊(cè)模塊(4)2.3.2 統(tǒng)計(jì)模塊(5)2.3.3查詢模塊 (7)2.3.4修改模塊 (9)2.4主函數(shù)(11)3.上機(jī)操作(12)4.結(jié)束語(16)實(shí)習(xí)課題:客房管理系統(tǒng)1.題目與要求:實(shí)現(xiàn)登記功能,要提供結(jié)構(gòu)體的輸入操作,實(shí)現(xiàn)統(tǒng)計(jì)功能,要提供相應(yīng)的統(tǒng)計(jì)操作
2、,實(shí)現(xiàn)查詢功能,要提供查找操作,實(shí)現(xiàn)修改功能,要提供修改操作;另外還有提供鍵盤式菜單實(shí)現(xiàn)功能選擇。頭文件:#include#include#include#include#include#define NUM 50/定義常量NUMvoid input();void record();void find();void modify();int now_no;/定義全局變量now_no建立如下結(jié)構(gòu)體:struct Client char name20; char sex10; int age; char ID_card20; int year; int month; int date; int R
3、oom_ID; char Tel15; int Price; char Sign10; RoomNUM;2.功能實(shí)現(xiàn)設(shè)計(jì):2.1總體設(shè)計(jì):下面來分析一下整個(gè)系統(tǒng),根據(jù)上面的要求分析,可將這個(gè)系統(tǒng)設(shè)計(jì)為五大模塊(見下圖):注冊(cè)模塊,統(tǒng)計(jì)模塊,查詢模塊,修改模塊,退出模塊。其主要功能為:注冊(cè),統(tǒng)計(jì),查詢,修改功能??头抗芾硐到y(tǒng) 系統(tǒng)系統(tǒng) 注冊(cè)統(tǒng)計(jì) 查詢修改退出2.2詳細(xì)設(shè)計(jì): 程序中需要用到的函數(shù)。2.2.1保存函數(shù)用于將輸入的數(shù)據(jù)保存到文本文件客戶信息.txt文件中,實(shí)現(xiàn)數(shù)據(jù)的保存void save()FILE *fp;int i;if (fp=fopen(客戶信息.txt,a+)=NULL)/
4、*a+表示以讀和追加方式打開文件客戶信息.txt */printf(cannot open filen);return;for(i=0;iRoomi.age!=0;i+)fprintf(fp,%s %s %d %s %d %d %d %d %s %d %sn,R,Roomi.sex,Roomi.age,Roomi.ID_card,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);/按照規(guī)定的格式保存客戶信息fclose(fp); 2.2.2讀取函數(shù)將文本文件客戶信
5、息.txt中的客戶個(gè)人信息讀取出來,從而實(shí)現(xiàn)統(tǒng)計(jì)、查詢以及修改的功能。void read()FILE *fp;int i;if(fp=fopen(客戶信息.txt,r)=NULL) printf(nCannot open filen);return; for(i=0;!feof(fp);i+)/!feof(fp)文件讀到結(jié)束時(shí)讀取停止fscanf(fp,%s %s %d %s %d %d %d %d %s %d %sn,&R,&Roomi.sex,&Roomi.age,&Roomi.ID_card,&Roomi.year,&Roomi.month,&Roomi. date,&
6、Roomi.Room_ID,&Roomi.Tel,&Roomi.Price,&Roomi.Sign,&now_no); fclose(fp); 2.3 功能模塊設(shè)計(jì)2.3.1 注冊(cè)模塊用于完成客戶個(gè)人信息的輸入功能并保存。本函數(shù)的功能為登記用戶及房間信息,包括姓名、性別、年齡、身份證、年份、月份、日期、房間電話及房間價(jià)格。系統(tǒng)依次分配房間號(hào)并定義此房間為非空。void input()int i=0,right,num;char as,sex10;printf(顧客人數(shù):);scanf(%d人,&num);/輸入顧客的人數(shù)doprintf(tttt1.錄入賓客信息n輸入第%d賓客的信息n,i+1
7、);printf(n輸入賓客姓名:);gets(R);doprintf(n輸入賓客性別:);scanf(%s,&sex);if(strcmp(sex,男)!=0&strcmp(sex,女)!=0)/*判斷輸入的字符是否為“男”或“女”,否則輸出“輸入有誤!”*/printf(輸入有誤!);right=1;getchar();else right=0;strcpy(Roomi.sex,sex);while(right=1);printf(n輸入賓客的年齡:);scanf(%d,&Roomi.age);printf(n輸入賓客身份證號(hào):);scanf(%s,&Roomi.ID_c
8、ard);printf(n輸入賓客入住時(shí)間:);scanf(%d,&Roomi.year);scanf(%d,&Roomi.month);scanf(%d,&Roomi.date);printf(n輸入賓客房間號(hào):);scanf(%d,&Roomi.Room_ID);printf(n輸入賓客房間電話:);scanf(%s,&Roomi.Tel);printf(n輸入賓客房間價(jià)格:);scanf(%d,&Roomi.Price);printf(n輸入該房間是否入住(yes/no):);scanf(%s,&Roomi.Sign);/輸入客戶的個(gè)人信息printf(nn);i+;now_no=i;p
9、rintf(是否繼續(xù)輸入?(Y/N);/判斷是否繼續(xù)輸入as=getch();system(cls); save();while(as!=n&as!=N);system(cls);/清屏2.3.2 統(tǒng)計(jì)模塊用于統(tǒng)計(jì)總共入住的人數(shù),并且可以統(tǒng)計(jì)某一天住了多少人以及收入多少。void record()int i,j,y,m,d,s=0,money=0;char as;int n=0;read();doprintf(n客房入住總數(shù): );fflush(stdin);for(j=0;Roomj.age!=0;j+)n=n+1;printf(%d間n,n);/統(tǒng)計(jì)一共入住的人數(shù)printf(輸入查詢?nèi)掌?/p>
10、: ); /按照日期統(tǒng)計(jì)入住人數(shù)及收入scanf(%d%d%d,&y,&m,&d);fflush(stdin);for(i=0;i=NUM;i+)if(Roomi.year=y)&(Roomi.month=m)&(Roomi.date=d)/判斷輸入的日期與數(shù)據(jù)庫(kù)中的哪些日期相同s=s+1;money=money+Roomi.Price;printf(n 姓名:%sn 性別:%sn 年齡:%dn 身份證號(hào):%sn 入住時(shí)間:%d年%d月%d日n 房間號(hào)碼:%dn 電話號(hào)碼:%sn 價(jià)格:%dn 是否入?。?sn,R,Roomi.sex,Roomi.age,Roomi.ID_c
11、ard,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);printf(n該天客房入住總數(shù): %d人n,s); printf(該天共收入%d元n,money);printf(t按任意鍵返回主菜單.);as=getch();system(cls);while(!as);system(cls);2.3.3查詢模塊本函數(shù)的功能為輸出查詢功能菜單選項(xiàng),包括根據(jù)房間號(hào)查詢、根據(jù)姓名查詢。系統(tǒng)根據(jù)輸入的選項(xiàng)執(zhí)行相應(yīng)的函數(shù)。void find()int i,a,b;char str20,as;r
12、ead ();doprintf(n按以下條件查詢:1.姓名 2.房間號(hào) 3.返回主菜單n請(qǐng)選擇:);scanf(%d,&a);switch(a)case 1:doprintf(輸入要查詢的賓客姓名:);fflush(stdin);gets(str);for(i=0;iNUM;i+)if(!strcmp(R,str)printf(n 姓名:%sn 性別:%sn 年齡:%dn 身份證號(hào):%sn 入住時(shí)間:%d年%d月%d日n 房間號(hào)碼:%dn 房間電話:%sn 房間價(jià)格:%dn 該房間是否入住(yes/no)%snn,R,Roomi.sex,Roomi.age,
13、Roomi.ID_card,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);else;while(!as);break;case 2:doprintf(輸入要查詢的房間號(hào):);scanf(%d,&b);for(i=0;iNUM;i+)if(Roomi.Room_ID=b)printf(n 姓名:%sn 性別:%sn 年齡:%dn 身份證號(hào):%sn 入住時(shí)間:%d年%d月%d日n 房間號(hào)碼:%dn 房間電話:%sn 房間價(jià)格:%dn 該房間是否入住(yes/no)%snn,Room
14、,Roomi.sex,Roomi.age,Roomi.ID_card,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);else;while(!as);break;case 3:system(exit);default:break;printf(是否繼續(xù)查詢?(Y/N)n);as=getch();while(as!=n&as!=N);system(cls);2.3.4修改模塊本函數(shù)的功能為系統(tǒng)根據(jù)輸入的姓名調(diào)出該用戶及所在房間信息,同時(shí)輸出修改功能菜單選項(xiàng),包括修改性別
15、、修改年齡、修改入住年份、修改月份及修改日期等。系統(tǒng)根據(jù)輸入的選項(xiàng)修改用戶相應(yīng)的信息。void modify()int i,x;char str20,as;printf(輸入要修改的賓客姓名:);scanf(%s,&str);read ();do for(i=0;Roomi.age!=0;i+)if(!strcmp(R,str)system(cls);printf(n 姓名:%sn 性別:%sn 年齡:%dn 身份證號(hào):%sn 入住時(shí)間:%d年%d月%d日n 房間號(hào)碼:%dn 電話號(hào)碼:%sn 價(jià)格:%dn 是否入住:%snn,R,Roomi.sex,Roo
16、mi.age,Roomi.ID_card,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);printf(請(qǐng)選擇要修改的內(nèi)容:n1.姓名 tt2.性別 tt3.年齡 tt4.身份證號(hào) n5.入住時(shí)間 t6.房間號(hào) t7.客房電話 t8.價(jià)格n請(qǐng)選擇:);/按照不同的選擇修改相應(yīng)的內(nèi)容scanf(%d,&x);switch(x)case 1:printf(ntt輸入新插入賓客信息n);printf(n輸入賓客姓名:);scanf(%s,R);break;case 2
17、:printf(n輸入賓客性別:);scanf(%s,&Roomi.sex);break;case 3:printf(n輸入賓客的年齡:);scanf(%d,&Roomi.age);break;case 4:printf(n輸入賓客身份證號(hào):);scanf(%s,&Roomi.ID_card);break;case 5:printf(n輸入賓客入住時(shí)間:);scanf(%d,&Roomi.year);scanf(%d,&Roomi.month);scanf(%d,&Roomi.date);break;case 6:printf(n輸入賓客房間號(hào):);scanf(%d,&Roomi.Room_I
18、D);break;case 7:printf(n輸入賓客房間電話:);scanf(%s,&Roomi.Tel);break;case 8:printf(n輸入賓客房間價(jià)格:);scanf(%d,&Roomi.Price);case 9:system(exit);default:system(cls);printf(n);save();printf(n 姓名:%sn 性別:%sn 年齡:%dn 身份證號(hào):%sn 入住時(shí)間:%d年%d月%d日n 房間號(hào)碼:%dn 電話號(hào)碼:%sn 價(jià)格:%dn 是否入?。?sn,R,Roomi.sex,Roomi.age,Roomi.ID_car
19、d,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);break;as=getch();while(!as);system(cls);24主函數(shù)顯示各功能選項(xiàng)根據(jù) n的值調(diào)用各功能模塊函數(shù)NY輸入n ,判斷n 是否是0-5void main()int as;start:doprintf(t*);printf(ntt歡迎使用客房管理系統(tǒng)n);printf(ntt| 1.錄入賓客信息 |ntt| 2.統(tǒng)計(jì)賓客信息 |ntt| 3.查詢賓客信息 |ntt| 4.修改賓客信息 |ntt|
20、5.退出 |n);printf(t*n);printf(tt選擇功能選項(xiàng): );/選擇語句用于選擇不同的模塊fflush(stdin);scanf(%d,&as);switch(as)case 1:system(cls);input();break;case 2:system(cls);record();break;case 3:system(cls);find();break;case 4:system(cls);modify();break;case 5:system(exit);exit(0);default:system(cls);goto start;while(1); 3.上機(jī)操作
21、下面事各個(gè)模塊的界面圖:3.1主菜單3.2錄入信息模塊3.3統(tǒng)計(jì)模塊 3.4查詢模塊3.4.1按姓名查找3.4.2按房間號(hào)查找3.5修改模塊3.6退出3.7文本數(shù)據(jù)4.結(jié)束語通過此次實(shí)習(xí),我們更加理解和懂得運(yùn)用結(jié)構(gòu)化程序設(shè)計(jì)的思想和方法,初步掌握開發(fā)一個(gè)小型實(shí)用系統(tǒng)的基本方法,學(xué)會(huì)調(diào)試一個(gè)較長(zhǎng)程序的的基本方法,學(xué)會(huì)利用流程圖表示算法,進(jìn)一步掌握和提高利用C語言進(jìn)行程序設(shè)計(jì)的能力。在實(shí)習(xí)中遇到了許多的調(diào)試不出結(jié)果出乎意料的問題。在調(diào)試的過程中,得到了許多以后可以避免錯(cuò)誤的經(jīng)驗(yàn)。也得到了很多沒有接觸過的知識(shí)。這些都使我獲益匪淺。C語言是一門計(jì)算機(jī)語言,如同其他計(jì)算機(jī)語言甚至日常交際中常說的外語一樣需要不斷的練習(xí)和實(shí)踐才能逐漸掌握并熟練運(yùn)用。尤其是對(duì)于帶有創(chuàng)造性的編寫一個(gè)較大C語言程序時(shí)更能凸現(xiàn)出這一點(diǎn)。由于本人學(xué)習(xí)該語言理論知識(shí)時(shí)間倉(cāng)促加之課下沒有進(jìn)行大量的程序編寫練習(xí),因此在編寫及調(diào)試本程序過程中難免遇到了諸多問題?,F(xiàn)就出現(xiàn)的這些問題及解決辦法作簡(jiǎn)
溫馨提示
- 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國(guó)和厚樸酚行業(yè)調(diào)查報(bào)告
- 2025年中國(guó)維生素B2粉行業(yè)市場(chǎng)發(fā)展前景及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 江蘇省蘇州市實(shí)驗(yàn)中學(xué)2025屆高二下化學(xué)期末聯(lián)考模擬試題含解析
- 2025年數(shù)字式壓磁應(yīng)力測(cè)量?jī)x項(xiàng)目調(diào)研分析報(bào)告
- 中國(guó)二氯乙烷行業(yè)調(diào)查報(bào)告
- 2023-2028年中國(guó)鴕鳥養(yǎng)殖行業(yè)發(fā)展前景預(yù)測(cè)及投資規(guī)劃建議報(bào)告
- 2020-2025年中國(guó)小麥種子行業(yè)發(fā)展?jié)摿Ψ治黾巴顿Y方向研究報(bào)告
- 中國(guó)發(fā)酵制品行業(yè)發(fā)展前景預(yù)測(cè)及投資戰(zhàn)略研究報(bào)告
- 煤礦安全生產(chǎn)是指在煤礦生產(chǎn)活動(dòng)過程中
- 簡(jiǎn)述本人的崗位職責(zé)
- 2025年 云南省危險(xiǎn)化學(xué)品經(jīng)營(yíng)單位安全管理人員考試練習(xí)題附答案
- 美發(fā)師五級(jí)試題及答案
- Q-GDW10250-2025 輸變電工程建設(shè)安全文明施工規(guī)程
- 2024-2025學(xué)年四年級(jí)(下)期末數(shù)學(xué)試卷及答案西師大版2
- 2025-2030年中國(guó)釹鐵硼永磁材料行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030年中國(guó)高導(dǎo)磁芯行業(yè)深度研究分析報(bào)告
- 新課標(biāo)(水平三)體育與健康《籃球》大單元教學(xué)計(jì)劃及配套教案(18課時(shí))
- 《生物安全培訓(xùn)》課件-2024鮮版
- (完整版)形式發(fā)票模版(國(guó)際件通用)
- 25公斤級(jí)平焊法蘭及螺栓規(guī)格尺寸
- 中文版EN-12546
評(píng)論
0/150
提交評(píng)論