版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中 原 工 學(xué) 院軟件職業(yè)技術(shù)學(xué)院一級(jí)實(shí)踐環(huán)節(jié)報(bào)告課題名稱: 賓館客房管理系統(tǒng) 專 業(yè): net軟件 班 級(jí): net104 學(xué) 號(hào): 36 學(xué)生姓名: 李新輝 指導(dǎo)教師: 羅菁 年 月 日一、題目賓館客房管理系統(tǒng)二、流程分析賓 館 客 房 管 理 系 統(tǒng)客房登記客戶查詢房間查詢退房結(jié)算房間數(shù)選擇類型訂金客戶基本信息登記客房號(hào)查詢姓名查詢空房間查詢查詢所有客戶查詢所有房間房間號(hào)確定退房日期結(jié)算三、源代碼#include#include#include#include/將字符轉(zhuǎn)化為小寫(xiě)字母函數(shù)#define z 50 /賓館的房間數(shù)#define ay 800#define by 600#def
2、ine cy 300#define aj 15#define bj 20#define cj (z-aj-bj)struct hotleunsigned int num;char dj; /各種等級(jí)類型unsigned int money;int fk;/判斷房間的空閑狀況0為空,為有人roomz;struct dateint month;int day; ;struct peoplechar name20;char id15;unsigned int num0;/房間號(hào)unsigned int money0;/客人交的訂金struct date ru;struct date chu;kehu
3、z;void saveroom();void loadroom();void printroom();void save(int s);void save1(int s);int loadn();void saven(int n);void savekehu2(int t,int m);/錄入賓館房間信息/void luru()int a0,b0,c0;a0=b0=c0=0;int i;for(i=0;iaj;i+)roomi.num=(a0+)+601);roomi.dj =a;roomi.money =ay;roomi.fk=0;for(i=aj;i(bj+aj);i+)roomi.num
4、=(b0+)+501);roomi.dj =b;roomi.money =by;roomi.fk=0;for(i=(aj+bj);iz;i+)roomi.num=(c0+)+401);roomi.dj =c;roomi.money =cy;roomi.fk=0;saveroom();void saveroom()/儲(chǔ)存房間信息file *fp;fp=fopen(my hotle.text,wb);for(int i=0;iz;i+)/if(fwrite(&roomi,sizeof(struct hotle),1,fp)!=1)printf(文件寫(xiě)入失敗n);break;fclose(fp);v
5、oid loadroom()file *fp;int i;if(fp=fopen(my hotle.text,rb)=null)printf(打開(kāi)文件失敗n);return;for(i=0;iz;i+)if(fread(&roomi,sizeof(struct hotle),1,fp)!=1)printf(讀取文件失敗n);break;printf(讀取成功!n);fclose(fp);void printroom()/輸出各個(gè)房間的信息/loadroom();printf(客房號(hào) 客房等級(jí) 客房?jī)r(jià)格 客房空閑(為空)n);for(int i=0;iz;i+)printf(%-18d%-12c
6、%-18d%-15dn,roomi.num,roomi.dj,roomi.money,roomi.fk);/輸出各類型空房間的信息/void printkong(char ch)loadroom();int i;switch(ch)case a:printf(a類(豪華套房)空房間信息 客房號(hào) 客房?jī)r(jià)格 n);for(i=0;iaj;i+)if(roomi.fk=0)printf(ttt%11d%15dn,roomi.num,roomi.money);break;case b:printf(b類(中檔套房)空房間信息 客房號(hào) 客房?jī)r(jià)格 n);for(i=aj;i(aj+bj);i+)if(ro
7、omi.fk=0)printf(ttt%11d%15dn,roomi.num,roomi.money);break;case c:printf(c類(單人公寓)空房間信息 客房號(hào) 客房?jī)r(jià)格 n);for(i=(aj+bj);iz;i+)if(roomi.fk=0)printf(ttt%11d%15dn,roomi.num,roomi.money);break;/選房間號(hào)/unsigned int panduan(unsigned int num1,char ch)int temp;/記錄房間號(hào)int i;loadroom();for(i=0;iz;i+)if(roomi.num=num1&(t
8、olower(roomi.dj)=ch)return temp=i;printf(請(qǐng)檢查您選擇的房間號(hào)是否有誤!n);return (z+2);/訂房登記/int n;/已訂的房間數(shù)void dengji()int s;/每次所訂的房間數(shù)n=loadn();/讀取每次文件中已訂房間數(shù)的值int flag=0;/真假判斷char ch;/用來(lái)選取房間等級(jí)unsigned int money1;/預(yù)付金額file *fp;unsigned int t;/printf(請(qǐng)輸入您要訂的房間數(shù)n);scanf(%d,&s);dogetchar();/接收輸入中的回車printf(請(qǐng)選擇您所訂房間的類型
9、a(豪華套房) b(中檔套房) c(單人公寓)n);ch=getchar();while(!(tolower(ch)=a|tolower(ch)=b|tolower(ch)=c);for(int i=0;iz)flag=1;elseflag=0;while(flag);/當(dāng)選擇房間錯(cuò)誤或者所選房間有人時(shí)重新輸入。roomt.fk=1;saveroom();/存取房間信息;kehui.num0=num1;doprintf(請(qǐng)交付訂金(不得低于房?jī)r(jià)的倍)n);scanf(%d,&money1);while(money1z)flag=1;elseflag=0;while(flag);/當(dāng)選擇房間錯(cuò)誤
10、或者所選房間有人時(shí)重新輸入。roomt.fk=1;saveroom();/存取房間信息;kehui.num0=num1;doprintf(請(qǐng)交付訂金(不得低于房?jī)r(jià)的倍)n);scanf(%d,&money1);while(money1z)flag=1;elseflag=0;while(flag);/當(dāng)選擇房間錯(cuò)誤或者所選房間有人時(shí)重新輸入。roomt.fk=1;saveroom();/存取房間信息;kehui.num0=num1;doprintf(請(qǐng)交付訂金(不得低于房?jī)r(jià)的倍)n);scanf(%d,&money1);while(money1(2*roomt.money);/預(yù)付的訂金不得低于
11、房間價(jià)格的兩倍kehui.money0=money1;break;/saveroom();printf(請(qǐng)輸入客戶的姓名n);getchar();/接收gets();printf(請(qǐng)輸入客戶的身份證號(hào));gets(kehui.id);printf(請(qǐng)輸入入住日期(月、日)n);scanf(%d%d,&kehui.ru.month,&kehui.ru.day);printf(訂房成功,歡迎您的光臨n);if(fp=fopen(kehuxinxi.text,rb)=null)save1(s);elsesave(s);n=n+s;/n為以訂房間的人數(shù)。saven(n);/存取已訂
12、房間人數(shù)n的值/void saven(int n)file *fp;fp=fopen(n.text,w);fprintf(fp,%5d,n);fclose(fp);/讀取n的值/int loadn()int m;file *fp;if(fp=fopen(n.text,r)=null)return 0;elsefscanf(fp,%d,&m);return m;/存取客戶信息(追加)/void save(int s)file *fp;int i,m;m=loadn();if(fp=fopen(kehuxinxi.text,ab)=null)printf(打開(kāi)文件失敗n);return;for(i
13、=0;is;i+)fwrite(&kehui,sizeof(people),1,fp);fclose(fp);/存?。ó?dāng)文件為空時(shí))/void save1(int s)file *fp;fp=fopen(kehuxinxi.text,wb);for(int i=0;is;i+)fwrite(&kehui,sizeof(people),1,fp);fclose(fp);/讀取客戶信息文件/void loadkehu()int m,i;m=loadn();file *fp;if(fp=fopen(kehuxinxi.text,rb)=null)printf(打開(kāi)文件失敗或者客戶信息為空n);ret
14、urn;for(i=0;im;i+)if(fread(&kehui,sizeof(people),1,fp)!=1)printf(讀取文件失敗/n);return;/ 輸出客戶信息/void printkehu()loadkehu();int m,i;m=loadn();/讀取現(xiàn)在總共有多少個(gè)客人printf(客房號(hào) 客戶姓名 id 入住日期 預(yù)付金額n);for(i=0;im;i+)printf(%-3dtt%-3s t%-3stt %5d月%2d日tt%-dn,kehui.num0,,kehui.id,kehui.ru.month,kehui.ru.day,kehui.
15、money0);/輸出一個(gè)客戶信息/void printkehu2(int i)/i是客戶的下標(biāo)printf(客房號(hào) 客戶姓名 id 入住日期 預(yù)付金額n);printf(%3dtt%3st%-3stt%-5d 月%-2d 日tt%dn,kehui.num0,,kehui.id,kehui.ru.month,kehui.ru.day,kehui.money0);/查詢客戶信息/void chaxun()int k;unsigned int numk;/查詢的客房號(hào)int flag;/判斷作用char namek20;/查詢的客戶姓名loadkehu();printf(1.客
16、房號(hào)查詢 2.客戶姓名查詢 n);doprintf(請(qǐng)選擇: );scanf(%d,&k);while(!(k=1|k=2);switch(k)case 1:flag=1;/int i;printf(請(qǐng)輸入您要查詢的客房號(hào): );scanf(%d,&numk);for(i=0;iz;i+)if(kehui.num0=numk)flag=0;break;if(flag=1)/沒(méi)查到時(shí)取初值printf(沒(méi)有找到您要查詢的客戶n);return;printkehu2(i);break;case 2:flag=1;/int i;printf(請(qǐng)輸入您要查詢的客戶姓名: );getchar();/接收
17、scanf(%s,namek);for(i=0;iz;i+)if(strcmp(,namek)=0)flag=0;break;if(flag=1)/沒(méi)查到時(shí)取初值printf(沒(méi)有找到您要查詢的客戶n);return;printkehu2(i);break;/時(shí)間(一年的第幾天)/int shijian(int month,int day)int a12=31,28,31,30,31,30,31,31,30,31,30,31;int s=0;for(int i=0;imonth-1;i+)s=s+ai;s=s+day;return s;/退房結(jié)算/void tuifang(
18、)int i,m,t1,t2,s1,s2,s;int flag=0;unsigned int money9;char ch;m=loadn();/客人總數(shù)getchar();/接收printf(請(qǐng)輸入您要退的客房號(hào)n);unsigned int num9;/退的房間號(hào)scanf(%d,&num9);loadkehu();/讀取客戶信息loadroom();/讀取房間信息for(i=0;im;i+)if(kehui.num0=num9)t1=i;/記住客戶的位置flag=1;/證明有這個(gè)客戶break;for(i=0;i=0)printf(應(yīng)找您人民幣%d 元n,(kehut1.money0-m
19、oney9);elseprintf(您的預(yù)付金額不足,請(qǐng)您再交取人民幣 %d 元!n,(money9-kehut1.money0);roomt2.fk=0;saveroom();m=m-1;savekehu2(t1,m);saven(m);/存儲(chǔ)剩余已訂房的客戶總數(shù)printf(歡迎您下次光臨!n);elsereturn;/客戶退房后存儲(chǔ)/void savekehu2(int t,int m)/t為退房客戶的下標(biāo),m為剩余訂房客戶的人數(shù)file *fp;if(fp=fopen(kehuxinxi.text,wb)=null)return;for(t;tm;t+)kehut.num0=kehut
20、+1.num0;strcpy(,kehut+1.name);strcpy(kehut.id,kehut+1.id);kehut.money0=kehut+1.money0;kehut.ru.month=kehut+1.ru.month;kehut.ru.day=kehut+1.ru.day;for(int i=0;im;i+)if(fwrite(&kehui,sizeof(people),1,fp)!=1)printf(存取失敗n);break;fclose(fp); void mulu()/首頁(yè)提示信息printf(1. 客人入住登記n);printf(2. 客戶信息查詢
21、n);printf(3. 查詢房間信息n);printf(4. 退房結(jié)算n);printf(0. 退出n);void main()/luru();/重新錄入房間信息/printkong(b);/getchar();/return;char ch50=* * * * * welcome to * * * * *;printf(*nn);printf( %snn,ch);printf( * * * 歡迎您進(jìn)入賓館管理系統(tǒng)* * *nn);printf(*nnn);mulu();for(;)char ch2;int c,k;doprintf(請(qǐng)正確選擇序號(hào): );scanf(%d,&c);while(!(c=1|c=2|c=3|c=4|c=5|c=0);switch(c)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 危險(xiǎn)化學(xué)品道路運(yùn)輸安全協(xié)議(2025版)3篇
- 2025年度藥店全職店員聘用勞動(dòng)合同
- 2025年度生物科技研發(fā)項(xiàng)目提成合同
- 2025年度餐飲企業(yè)員工勞動(dòng)合同(含合同解除賠償)
- 塑膠運(yùn)動(dòng)場(chǎng)地的使用后評(píng)估考核試卷
- 健康保險(xiǎn)改革趨勢(shì)考核試卷
- 中藥材種植的農(nóng)業(yè)技術(shù)培訓(xùn)與教育考核試卷
- 2025年全球及中國(guó)熱帶香料行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 音樂(lè)療愈課課程設(shè)計(jì)
- 應(yīng)收賬款管理課程設(shè)計(jì)
- 藥學(xué)技能競(jìng)賽標(biāo)準(zhǔn)答案與評(píng)分細(xì)則處方
- 山東省濰坊市2023-2024學(xué)年高二下學(xué)期期末考試 歷史 含解析
- 中醫(yī)診療規(guī)范
- 報(bào)建協(xié)議書(shū)模板
- 第14課《葉圣陶先生二三事》導(dǎo)學(xué)案 統(tǒng)編版語(yǔ)文七年級(jí)下冊(cè)
- 貴州省2024年中考英語(yǔ)真題(含答案)
- 施工項(xiàng)目平移合同范本
- 北師大版八年級(jí)上冊(cè)數(shù)學(xué)期中綜合測(cè)試卷(含答案解析)
- (高清版)JTGT 3360-01-2018 公路橋梁抗風(fēng)設(shè)計(jì)規(guī)范
- 幼兒園創(chuàng)意美勞培訓(xùn)
- 同濟(jì)大學(xué)第四版線性代數(shù)課后習(xí)題答案
評(píng)論
0/150
提交評(píng)論