C语言课程设计报告酒店房间登记及计费管理系统源代码.doc
《C语言课程设计报告酒店房间登记及计费管理系统源代码.doc》由会员分享,可在线阅读,更多相关《C语言课程设计报告酒店房间登记及计费管理系统源代码.doc(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、. -酒店房间登记与计费管理系统源代码#define M 80#include#include#include/*函数声明*/void check_in(); /*登记入住函数*/void chamber(); /*入住情况函数*/void price(); /*当前费用函数*/void fee(); /*结账退房函数*/void infor(); /*信息查询函数*/void save(int); /*保存信息函数*/void read(int); /*读取信息函数*/ void choice(); /*功能选择函数*/int judge_year(int); /*判断闰年函数*/void
2、information(); /*输出全部房间信息*/*构造体*/struct timeint year; int mon;int date;int hour; struct room /*定义各房间信息的构造体*/char name40;char ID18;int flag; /* 0-无人入住,1-按小时计费,2-按天计费 */long int deposit;time t2; /* 0-入住时间,1-当前时间 */ roomM;char c140=0;char c218=0;/*主函数主界面*/void main()system(cls); /*清屏*/system(color 4E);
3、int n;printf(*);printf(* *);printf(*tt - 欢送光临万豪酒店 - *);printf(* *);printf(*nn);printf(ttt 1. 登记入住 nn);printf(ttt 2. 入住情况 nn);printf(ttt 3. 当前费用 nn);printf(ttt 4. 结账退房 nn);printf(ttt 5. 信息查询 nn);printf(ttt 6. 全部信息 nn);printf(ttt 7. 退出系统 nn);printf(请输入您需要的效劳的代码:);scanf(%d,&n);while(n7) printf(nn代码输入有误
4、,请您重新输入:); scanf(%d,&n); switch(n) /*根据输入数字选择功能*/ case 1:check_in();break; /*调用登记入住函数*/ case 2:chamber();break; /*调用房间情况函数*/ case 3:price();break; /*调用当前费用函数*/ case 4:fee();break; /*调用结账退房函数*/ case 5:infor();break; /*调用信息查询函数*/ case 6:information();break; /*调用全部信息函数*/ case 7:exit(0); /*调用退出系统函数*/*查看
5、房间使用情况函数*/void chamber() system(cls); /*清屏*/system(color 4E);printf(n*房间使用情况*n);int count=0;int i;int j;int k;int m;for(i=1;i=80;i+) /*统计未入住房间总数*/read(i);if(roomi-1.flag=0) count+;printf(当前未使用房间数:%dnnn,count);chaxun:printf(请输入你要查询的房间号1-40:单人间,41-80:双人间:); /*输入房间号查询房间入住情况*/scanf(%d,&m);while(m80) pri
6、ntf(nn房间号输入有误,请您重新输入:); scanf(%d,&m); read(m);while(roomm-1.flag!=0) printf(nn对不起,该房间已有客人入住,请输入其他房间号:); scanf(%d,&m);read(m);printf(nn该房间没有客人入住,您要入住该房间吗?1-是,2-否:);scanf(%d,&j);while(j2)printf(nn您的选择输入有误,请您重新输入:);scanf(%d,&j);if(j=1)check_in();elseprintf(nn您需要继续查询吗?1-是,2-否:);scanf(%d,&k);while(k2)pri
7、ntf(nn您的选择输入有误,请您重新输入:);scanf(%d,&k);if(k=1)goto chaxun;elseprintf(nn);main();/*登记入住函数*/void check_in()system(cls); /*清屏*/system(color 4E);int i;int j;int l;int k;int tab212=31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31;printf(n*登记入住*n);printf(请输入您将入住的房间号:);scanf(%d,&i);whi
8、le(i80) printf(nn房间号输入有误,请您重新输入:); scanf(%d,&i); read(i);while(roomi-1.flag!=0) /*判断房间是否入住*/ printf(nn对不起,该房间已有客人入住,请输入其他房间号:); scanf(%d,&i);read(i);printf(nn请输入您的XX:); /*客人信息登记*/scanf(%s,roomi-1.name);j=strlen(roomi-1.name);while(j0)printf(nn您的XX输入有误,请您重新输入:n); scanf(%s,roomi-1.name); j=strlen(room
9、i-1.name); printf(nn请输入您的证件:);scanf(%s,roomi-1.ID);j=strlen(roomi-1.ID);while(j!=18)printf(nn您的证件输入有误,请您重新输入:n); scanf(%s,roomi-1.ID); j=strlen(roomi-1.ID); if(i=40) printf(nn您选择的是单人间,该房间148元/天,8元/小时。nnn); /*选择计费式*/ printf(请选择您的计费式1:按小时计费,2:按天计费:);else printf(nn您选择的是双人间,该房间128元/天,7元/小时。nnn); printf(
10、请选择您的计费式1:按小时计费,2:按天计费:);scanf(%d,&roomi-1.flag);while(roomi-1.flag2)printf(nn您的计费式输入有误,请您重新输入:);scanf(%d,&roomi-1.flag);printf(nn请按所示格式输入您的入住时间年-月-日-时,时为24小时制:);scanf(%d-%d-%d-%d,&roomi-1.t0.year,&roomi-1.t0.mon,&roomi-1.t0.date,&roomi-1.t0.hour);l=judge_year(roomi-1.t0.year);while(roomi-1.t0.year=
11、0)|(roomi-1.t0.mon12)|(roomi-1.t0.datetablroomi-1.t0.mon-1)|(roomi-1.t0.hour=24)printf(nn您的入住时间输入有误,请按照格式重新输入:);scanf(%d-%d-%d-%d,&roomi-1.t0.year,&roomi-1.t0.mon,&roomi-1.t0.date,&roomi-1.t0.hour);l=judge_year(roomi-1.t0.year);printf(nn请输入您的押金数额:);scanf(%ld,&roomi-1.deposit);while(roomi-1.deposit=0
12、)printf(nn您的押金数额输入有误,请您重新输入:n);scanf(%ld,&roomi-1.deposit);printf(nn您是否确定您的信息:1-是,2-否:);scanf(%d,&k);while(k2)printf(nn您的选择输入有误,请您重新输入:n);scanf(%d,&k);if(k=1)printf(nn您已登记入住成功,祝您在本店住得愉快!nn);save(i);choice();elsecheck_in();/*费用查询函数*/void price()system(cls); /*清屏*/system(color 4E);printf(n*费用查询*n);int
13、 i;int j;int k;int tab212=31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31;int day=0;int hr=0;int total_hour;int total_day;long int price;printf(请输入您的房间号:);scanf(%d,&i);while(i80) printf(nn您的房间号输入有误,请您重新输入:); scanf(%d,&i); read(i);while(roomi-1.flag=0) /*判断房间是否已有客人入住*/printf(n
14、n该房间无人入住,请重新输入您的房间号:);scanf(%d,&i);read(i);printf(nn请按所示格式输入当前时间年-月-日-时,时为24小时制:); /*输入当前时间*/shuru:scanf(%d-%d-%d-%d,&roomi-1.t1.year,&roomi-1.t1.mon,&roomi-1.t1.date,&roomi-1.t1.hour);j=judge_year(roomi-1.t1.year);while(roomi-1.t1.year=0)|(roomi-1.t1.mon12)|(roomi-1.t1.datetabjroomi-1.t1.mon-1)|(ro
15、omi-1.t1.hour=24)printf(nn您的入住时间输入有误,请按照格式重新输入:);scanf(%d-%d-%d-%d,&roomi-1.t1.year,&roomi-1.t1.mon,&roomi-1.t1.date,&roomi-1.t1.hour);j=judge_year(roomi-1.t1.year);if(roomi-1.t0.mon!=roomi-1.t1.mon)for(k=roomi-1.t0.mon+1;kroomi-1.t1.mon;k+)day+=tabjk-1;day+=tabjroomi-1.t0.mon-1-roomi-1.t0.date+room
16、i-1.t1.date;elseday+=roomi-1.t1.date-roomi-1.t0.date;hr=roomi-1.t1.hour-roomi-1.t0.hour;if(roomi-1.flag=1) /*根据房间类型和计费式计算费用*/if(hr0)total_hour=day*24-hr;elsetotal_hour=day*24+hr;if(i=40)price=8*total_hour;elseprice=7*total_hour;if(roomi-1.flag=2)while(hr0)day=day-1;hr=hr+24;if(hr8)total_day=day;else
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 报告 酒店 房间 登记 计费 管理 系统 源代码
限制150内