酒店房间登记与计费管理系统设计程序设计说明书Word格式.docx
- 文档编号:17440876
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:11
- 大小:19.41KB
酒店房间登记与计费管理系统设计程序设计说明书Word格式.docx
《酒店房间登记与计费管理系统设计程序设计说明书Word格式.docx》由会员分享,可在线阅读,更多相关《酒店房间登记与计费管理系统设计程序设计说明书Word格式.docx(11页珍藏版)》请在冰豆网上搜索。
显示账单
顾客可以输入姓名来完成退房操作,房间状态将更改为未入住。
系统将删除
该用户信息记录并读取生成账单。
2系统分析与设计2.1软件界面设计
运行程序后进入主界面,可以进行登记入住、查询房间、查询顾客、退出程序等几项操作:
图2.1.1
选择“1.登记入住”进入登记入住界面:
图2.1.2
输入相关信息,之后选择计费类型:
图2.1.3
选择“1.按天入住”按天数计费,会显示目前空置的房间。
输入所选房间已进行下一步操作:
图2.1.4
如选择“2.按小时入住”则按小时计费,操作同理。
图2.1.5之后会进入下一界面并提示登记成功。
图2.1.6
如在主界面选择“2.查询房间的入住情况”则会进入查询房间状况界面,程序将分别依次显示已入住的房间和空置房间。
图2.1.7如在主界面选择“3.查询当前费用”则会进入用户查询界面,输入顾客姓名即可进行查询图2.1.8
程序会显示该客人的相关信息图2.1.9
如在主界面选择“4.结账退房”则会进入用户退房界面,输入顾客姓名即可进行退房操作图2.1.10输入成功后会显示退房成功。
图2.1.11
在主界面选择“5.退出程序”会进入退出界面。
图2.1.12
2.2软件的数据(结构)设计
本软件运用了C语言文件的读取与写入功能,各文件的作用如下:
count.txt:
用于存储房客数量,内部存储一个int*数据。
room.txt:
用于存储房间信息,内部依次存储:
房间状态char*(1位)房间号char*(4位)房间类型char*(1位)
房间描述char*(6位)房间日租金int*房间月租金int*。
customer.txt:
用于存储房客信息,内部依次存储:
姓名char*证件类型char*证件号码int*房间号char*(4位)房租int*
押金int*2.3软件的算法设计
2.3.1软件模块图2.3.2程序流程图客房查询模块:
顾客查询模块:
结
账退房模块:
3软件的实现3.1使用的结构数组及函数的定义
结构体定义:
typedefstructroom//客房信息
charFID[5];
//房间号
chartype[2];
//客房类型
chardescribe[7];
//该客房类型的描述
intcost_d;
//日收费
intcost_h;
//时收费
charstatu[2];
//入住情况
room;
typedefstructcustomer//入住记录
//房间号
charname[20];
//名字
chartype[14];
//证件类型
intID;
//证件号
intpay;
//房费
intcp;
//押金
customer;
函数定义:
voidrentroom*p;
//登记入住模块
voidsearch_roomroom*p;
//客房查询模块
voidsearch_customerroom*p,intl;
//费用查询模块voidpayroom*p,intl;
//结账模块
3.2登记入住模块
源文件:
voidrentroom*p
inti,count,n,m2;
structroomrm[]0;
//定义结构数组structcustomercs;
charsearch[2]'
Y'
stu[2]'
N'
dill[5]0;
FILE
*fpin,*fpout;
fpoutfopen"
customer.txt"
"
a"
;
assertfpout!
NULL;
printf"
请输入姓名:
"
scanf"
%s"
&
cs.name;
fprintffpout,"
%s"
cs.name;
请填入证件类型:
cs.type;
cs.type;
请输入证件号码:
%d"
cs.ID;
%d"
cs.ID;
请选择入住方式:
\n1.按天入住\n2.按小时入住\n"
count;
fpinfopen"
room.txt"
r+"
assertfpin!
以下是现有的空房\n"
fori0;
i;
i++//对结构数组赋值,录入房间
信息
fscanffpin,"
rm[i].statu;
rm[i].FID;
rm[i].type;
rm[i].describe;
rm[i].cost_d;
rm[i].cost_h;
fclosefpin;
i++
ifstrcmpsearch,rm[i].statu0
%s号%s型%s日收费:
%d时收
费:
%d\n"
rm[i].FID,rm[i].type,rm[i].describe,rm[i].cost_d,rm[i].cost
_h;
请输入要入住的房屋"
dill;
ifstrcmpdill,rm[i].FID0//所选房间号与房间数据对比
strcpyrm[i].statu,stu;
//更改数组中的房间
状态
ifcount1
请选择天数:
n;
rm[i].cost_d*n;
rm[i].cost_d*n*m;
system"
cls"
\004已成功登记房间!
\n"
\004您的房号为:
%s\n"
\004请支付%d元的房费以及押金%d元。
rm[i].cost_d*n,rm[i].cost_d*n*m;
else
请选择小时数:
rm[i].cost_h*n;
rm[i].cost_h*n*m;
rm[i].cost_h*n,rm[i].cost_h*n*m;
fpinfopen"
w"
i++//将更改录入文件
fprintffpin,"
rm[i].cost_d;
rm[i].cost_h;
fclosefpout;
3.3查询房间模块
voidsearch_roomroom*p
inti,h,k;
structroomrm[]0;
FILE*fpin;
r"
fori0;
i++//对
结构数组赋值,即录入房间信息
fscanffpin,"
rm[i].describe;
目前的空置房间有:
//查询空客房
forh0;
h;
h++//显示结果
ifstrcmpsearch,rm[h].statu0
%s号%s型房间\n"
rm[h].FID,rm[h].type;
有顾客入住的房间:
//查询满客房
fork0;
k;
k++//显示结果
ifstrcmpsearch,rm[k].statu!
0
rm[k].FID,rm[k].type;
3.4查询房客模块
voidsearch_customerroom*p,intl//参数l的值即为主函数所读取
的客人数量
inta;
inti;
structcustomercs[20]0;
FILE*fpin,*fp1;
printf"
请输入要查询的用户姓名:
name;
fp1fopen"
count.txt"
assertfp1!
il;
i++//读取顾客数据
cs[i].name;
cs[i].type;
cs[i].ID;
cs[i].FID;
cs[i].pay;
cs[i].cp;
fora0;
al;
a++
ifstrcmpname,cs[a].name0//比较与所输入字符串与是否
一致
cs[a].name;
cs[a].type;
cs[a].ID;
cs[a].FID;
cs[a].pay;
cs[a].cp;
fclosefp1;
3.5结账退房模块
voidpayroom*p,intl
inti,j;
charstu[2]'
FILE*fp1,*fp2;
请输入客人姓名:
fp1fopen"
assertfp1;
fp2fopen"
assertfp2;
i++//对结构数组赋值
fscanffp1,"
rm[i].statu;
rm[i].FID;
rm[i].type;
forj0;
jl;
j++
fscanffp2,"
cs[j].name;
cs[j].type;
cs[j].ID;
cs[j].FID;
cs[j].pay;
cs[j].cp;
fclosefp2;
ifstrcmpname,cs[j].name0
strcpyFID,cs[j].FID;
for;
jl-1;
cs[j]cs[j+1];
//为数组重新赋值
以完成删除操作
cs[j].name;
cs[j].type;
cs[j].ID;
cs[j].FID;
cs[j].pay;
cs[j].cp;
fprintffp2,"
ifstrcmpFID,rm[i].FID0
//打开并清空文件
i++//重新录入全部信息来完成更改
fprintffp1,"
4软件测试1、voidrentroom*p//登记入住函数
用例:
input:
rooma[20]output:
请输入姓名
DANNYoutput:
请输入证件类型
idoutput:
请输入证件号码
10086output:
请选择入住方式:
1.按天入住
2.按小时入住
2output:
以下是现有的空房:
A101号A型SINGLE日租金150时租金20
请输入要入住的房屋
A101output:
请选择小时数
5output:
已成功登记房间
您的房号为:
A101
请支付100元的房租及押金200元
2、voidsearch_roomroom*p//住房查询函数
目前的空置房间有:
A102号B型SINGLE日租金150时租金20
A105号C型SINGLE日租金300时
租金40
B104号C型SINGLE日租金300时租金40
3、voidsearch_customerroom*p,intl//房客查询函数
rooma[20]j3output:
请输入要查询的用户姓名:
DANNYid10086A101100200
4、voidpayroom*p,intl//结账退房函数
已成功退房5软件使用说明书本程序是专门为酒店设计的管理系统,方便操作员的操作。
通过主界面,我们可以进行登记、查询房间、查询费用、退房及退出等操作。
通过登记界面,可以实现用户登记及住房登记、调整等功能。
通过费用查询界面,可以通过姓名查找顾客的入住信息。
通过房间查询界面,可以查找房间的使用情况。
通过退房界面,仅通过输入姓名就可以完成退房。
致谢此次的程序设计题目做的很是辛苦。
由于本人基础很差,所以花费了大量的时间,但最后总算成功完成。
这与老师的耐心指导是分不开的,同时我也在老师身上学到不少东西。
因此特在此对我的任课老师表示感谢~同时也要感谢所有帮助过我的同学。
修改房间不为空判断房间是否为空判断房号与读入数据是否相符文件显示录
记记录
文件客人息信人个输入房号读取房间信息是记录入文件结账退房模
块顾客查询模块客房查询模块登记入住模块酒店房间管理系统读取房间信息2显示1显示判断房间是否为空文件是否判断姓名是否相同文件显示操作顾客数据输入姓名是输出并显示账单判断姓名是否一致房间信息文件顾客信息文件客人删除对应信息是读取信息输入姓名更改对应房
间状态
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 酒店 房间 登记 计费 管理 系统 设计 程序 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)