酒店房间登记与计费管理系统设计程序的设计说明书

上传人:Sc****h 文档编号:138490070 上传时间:2022-08-21 格式:DOC 页数:24 大小:849.50KB
收藏 版权申诉 举报 下载
酒店房间登记与计费管理系统设计程序的设计说明书_第1页
第1页 / 共24页
酒店房间登记与计费管理系统设计程序的设计说明书_第2页
第2页 / 共24页
酒店房间登记与计费管理系统设计程序的设计说明书_第3页
第3页 / 共24页
资源描述:

《酒店房间登记与计费管理系统设计程序的设计说明书》由会员分享,可在线阅读,更多相关《酒店房间登记与计费管理系统设计程序的设计说明书(24页珍藏版)》请在装配图网上搜索。

1、.程序设计课程设计说明书课程名称程序设计设计题目酒店房间登记与计费管理系统设计专业班级学生指导教师起止日期 2013年 6月 8日至 2013年6 月 14日林业职业技术学院自动化工程系.下载可编辑 .目录摘 要. 错误 ! 未定义书签。1 软件需求分析说明书 .31.1登记入住系统 .31.2客房状态查询 .31.3住户信息查询 .31.4结账退房系统 .32 系统分析与设计 .42.1软件界面设计 .42.2软件的数据(结构)设计 .82.3软件的算法设计 .82.3.1软件模块图 .92.3.2程序流程图 .93 软件的实现 .113.1使用的结构数组及函数的定义.123.2登记入住模块

2、 .123.3查询房间模块 .153.4查询房客模块 .164 软件测试 .205 软件使用说明书 .21.下载可编辑 .1 软件需求分析说明书1.1 登记入住系统登记并记录顾客登记并记录顾客的证件类型及显示现有空置房间选择所需要的房间并更改房间状态信息计算并记录住房费及押金由于本软件针对操作员设计,所以界面应尽可能简单明了。住房及顾客信息由于涉及多种类型的数据,因此应用结构数组处理。用文件记录相关数据。1.2 客房状态查询分别显示已入住客房与空置客房读取住房信息文件的容并判断分类,借此可以清晰明了的显示客房状态。1.3 住户信息查询查询顾客所租房房号查询顾客住房费用顾客可以通过输入自己的来查

3、询个人的住房信息。1.4 结账退房系统退房更新所退房间状态删除退房用户记录显示账单顾客可以输入来完成退房操作,房间状态将更改为未入住。系统将删除该用户信息记录并读取生成账单。.下载可编辑 .2 系统分析与设计2.1 软件界面设计运行程序后进入主界面,可以进行登记入住、查询房间、查询顾客、退出程序等几项操作:图选择“ 1. 登记入住”进入登记入住界面:图输入相关信息,之后选择计费类型:图.下载可编辑 .选择“ 1. 按天入住”按天数计费,会显示目前空置的房间。输入所选房间已进行下一步操作:图如选择“ 2. 按小时入住”则按小时计费,操作同理。图.下载可编辑 .之后会进入下一界面并提示登记成功。图

4、如在主界面选择“ 2. 查询房间的入住情况”则会进入查询房间状况界面,程序将分别依次显示已入住的房间和空置房间。图.下载可编辑 .如在主界面选择“ 3. 查询当前费用”则会进入用户查询界面,输入顾客即可进行查询图程序会显示该客人的相关信息图如在主界面选择“ 4. 结账退房”则会进入用户退房界面,输入顾客即可进行退房操作图.下载可编辑 .输入成功后会显示退房成功。图在主界面选择“ 5. 退出程序”会进入退出界面。图2.2 软件的数据(结构)设计本软件运用了 C 语言文件的读取与写入功能,各文件的作用如下:count.txt:用于存储房客数量,部存储一个int* 数据。room.txt :用于存储

5、房间信息,部依次存储:房间状态 char* (1 位) 房间号 char* (4 位) 房间类型 char* ( 1 位)房间描述 char* (6 位) 房间日租金 int*房间月租金 int* 。customer.txt:用于存储房客信息,部依次存储:char*证件类型 char*证件 int*房间号 char* ( 4 位) 房租 int*押金 int*2.3 软件的算法设计.下载可编辑 .软件模块图酒店房间管理系统登记入住模块客房查询模块顾客查询模块结账退房模块程序流程图文记件录记 录判 断 房客人号 与 读个 人信 息输 入 房文读取房间信件修改房间不为空判 断 房显是间是否为空记录

6、入文件客房查询模块:.下载可编辑 .顾客查询模块:文读取房间信息件1 显示判断房间是2 显示是否为空否文件顾客数据输入姓名判断姓名是操作是否相同显示结账退房模块:.下载可编辑 .顾 客 信息文件读取信删除对应信息息是更改对应房客人判断姓名是间状态房 间 信输入姓名否一致息文件输出并显示账单3 软件的实现.下载可编辑 .3.1 使用的结构数组及函数的定义结构体定义:typedef struct room /客房信息char FID5;/房间号char type2;/客房类型char describe7;/该客房类型的描述int cost_d;/日收费int cost_h;/时收费char sta

7、tu2; /入住情况room;typedef struct customer /入住记录char FID5; /房间号char name20;/名字char type14;/证件类型int ID;/证件号int pay;/房费int cp; /押金customer;函数定义:void rent(room *p);/登记入住模块void search_room(room *p);/客房查询模块void search_customer(room *p, int l);/费用查询模块void pay(room *p, int l);/结账模块3.2 登记入住模块源文件:void rent(room

8、*p)int i,count,n,m=2;struct room rmmax=0;/定义结构数组struct customer cs;.下载可编辑 .char search2=Y,stu2=N,dill5=0;FILE *fpin,*fpout;fpout=fopen(customer.txt,a);assert(fpout != NULL);printf(请输入: );scanf(%s,&cs.name);fprintf(fpout,%s ,cs.name);printf(请填入证件类型: );scanf(%s,&cs.type);fprintf(fpout,%s ,cs.type);pri

9、ntf(请输入证件: );scanf(%d,&cs.ID);fprintf(fpout,%d ,cs.ID);printf( 请选择入住方式: n1. 按天入住 n2. 按小时入住 n); scanf(%d,&count);fpin = fopen(room.txt,r+);assert(fpin != NULL);printf(以下是现有的空房 n);for(i=0;imax;i+)/对结构数组赋值,录入房间信息fscanf(fpin,%s ,rmi.statu);fscanf(fpin,%s ,rmi.FID);fscanf(fpin,%s ,rmi.type);fscanf(fpin,%

10、s ,rmi.describe);fscanf(fpin,%d ,&rmi.cost_d);fscanf(fpin,%d ,&rmi.cost_h);fclose(fpin);for(i=0;imax;i+)if(strcmp(search,rmi.statu)=0).下载可编辑 .printf(%s号%s型%s日收费:%d时收费:%dn,rmi.FID,rmi.type,rmi.describe,rmi.cost_d,rmi.cost_h);printf(请输入要入住的房屋 );scanf(%s,&dill);for(i=0;imax;i+)if(strcmp(dill,rmi.FID)=0

11、)/所选房间号与房间数据对比strcpy(rmi.statu,stu);/更改数组中的房间状态fprintf(fpout,%s ,rmi.FID);if(count=1)printf(请选择天数: );scanf(%d,&n);fprintf(fpout,%d ,rmi.cost_d*n);fprintf(fpout,%d ,rmi.cost_d*n*m);system(cls);printf(004已成功登记房间 !n);printf(004您的房号为: %sn,rmi.FID);printf(004 请 支 付 %d 元 的 房 费 以 及 押 金 %d 元 。 n,rmi.cost_d*

12、n,rmi.cost_d*n*m);elseprintf(请选择小时数: );scanf(%d,&n);fprintf(fpout,%d ,rmi.cost_h*n);fprintf(fpout,%d ,rmi.cost_h*n*m);system(cls);printf(004已成功登记房间 !n);printf(004您的房号为: %sn,rmi.FID);.下载可编辑 .printf(004请支付 %d元的房费以及押金 %d元。n,rmi.cost_h*n,rmi.cost_h*n*m);fpin=fopen(room.txt,w);for(i=0;imax;i+)/将更改录入文件fpr

13、intf(fpin,%s ,rmi.statu);fprintf(fpin,%s ,rmi.FID);fprintf(fpin,%s ,rmi.type);fprintf(fpin,%s ,rmi.describe);fprintf(fpin,%d ,rmi.cost_d);fprintf(fpin,%dn,rmi.cost_h);fclose(fpout);fclose(fpin);3.3 查询房间模块void search_room(room *p)int i,h,k;struct room rmmax=0;char search2=Y;FILE *fpin;fpin = fopen(ro

14、om.txt,r);assert(fpin != NULL);for(i=0;imax;i+)/对结构数组赋值,即录入房间信息.下载可编辑 .fscanf(fpin,%s ,rmi.statu);fscanf(fpin,%s ,rmi.FID);fscanf(fpin,%s ,rmi.type);fscanf(fpin,%s ,&rmi.describe);fscanf(fpin,%d ,&rmi.cost_d);fscanf(fpin,%d ,&rmi.cost_h);printf(目前的空置房间有: n);/查询空客房for(h=0;hmax;h+)/显示结果if(strcmp(searc

15、h,rmh.statu)=0)printf(%s号%s 型房间 n,rmh.FID,rmh.type);printf(有顾客入住的房间: n);/查询满客房for(k=0;kmax;k+)/显示结果if(strcmp(search,rmk.statu)!=0)printf(%s号%s 型房间 n,rmk.FID,rmk.type);fclose(fpin);3.4 查询房客模块void search_customer(room *p,int l)/参数 l 的值 即为主函数所读取的客人数量char name20;int a;int i;.下载可编辑 .struct customer cs20=

16、0;FILE *fpin,*fp1;printf(请输入要查询的用户: );scanf(%s,&name);fpin=fopen(customer.txt,r);assert(fpin != NULL);fp1=fopen(count.txt,r);assert(fp1 != NULL);for(i=0;il;i+)/读取顾客数据fscanf(fpin,%s ,&csi.name);fscanf(fpin,%s ,&csi.type);fscanf(fpin,%d ,&csi.ID);fscanf(fpin,%s ,&csi.FID);fscanf(fpin,%d,&csi.pay);fsca

17、nf(fpin,%d,&csi.cp);for(a=0;al;a+)if(strcmp(name,csa.name)=0)/比较与所输入字符串与是否一致printf(%s ,csa.name);printf(%s ,csa.type);printf(%d ,csa.ID);printf(%s ,csa.FID);printf(%d ,csa.pay);printf(%dn,csa.cp);fclose(fpin);fclose(fp1);.下载可编辑 .3.5 结账退房模块void pay(room *p, int l)int i,j;char name20;char FID5;char st

18、u2=Y;struct room rmmax=0;struct customer cs20=0;FILE *fp1,*fp2;printf(请输入客人: );scanf(%s,&name);fp1=fopen(room.txt,r);assert(fp1);fp2=fopen(customer.txt,r);assert(fp2);for(i=0;imax;i+)/对结构数组赋值fscanf(fp1,%s ,&rmi.statu);fscanf(fp1,%s ,&rmi.FID);fscanf(fp1,%s ,&rmi.type);fscanf(fp1,%s ,&rmi.describe);f

19、scanf(fp1,%d ,&rmi.cost_d);fscanf(fp1,%d ,&rmi.cost_h);fclose(fp1);for(j=0;jl;j+)fscanf(fp2,%s ,&csj.name);fscanf(fp2,%s ,&csj.type);.下载可编辑 .fscanf(fp2,%d ,&csj.ID);fscanf(fp2,%s ,&csj.FID);fscanf(fp2,%d,&csj.pay);fscanf(fp2,%d,&csj.cp);fclose(fp2);for(j=0;jl;j+)if(strcmp(name, csj.name) = 0)strcpy(

20、FID,csj.FID);for(;jl-1;j+)csj = csj+1;/为数组重新赋值以完成删除操作fp2=fopen(customer.txt,w);assert(fp2);for(j=0;jl-1;j+)printf(%s ,csj.name);printf(%s ,csj.type);printf(%d ,csj.ID);printf(%s ,csj.FID);printf(%d ,csj.pay);printf(%dn,csj.cp);for(j=0;jl-1;j+)fprintf(fp2,%s ,csj.name);fprintf(fp2,%s ,csj.type);.下载可编

21、辑 .fprintf(fp2,%d ,csj.ID);fprintf(fp2,%s ,csj.FID);fprintf(fp2,%d ,csj.pay);fprintf(fp2,%dn,csj.cp);fclose(fp2);for(i=0;imax;i+)if(strcmp(FID, rmi.FID) = 0)strcpy(rmi.statu,stu);fp1=fopen(room.txt,w);/打开并清空文件assert(fp1);for(i=0;imax;i+)/重新录入全部信息来完成更改fprintf(fp1,%s ,rmi.statu);fprintf(fp1,%s ,rmi.FI

22、D);fprintf(fp1,%s ,rmi.type);fprintf(fp1,%s ,rmi.describe);fprintf(fp1,%d ,rmi.cost_d);fprintf(fp1,%dn,rmi.cost_h);fclose(fp1);4 软件测试.下载可编辑 .1、 void rent(room *p)/登记入住函数用例: input: room a20output:请输入input: DANNYoutput:请输入证件类型input: idoutput:请输入证件input: 10086output:请选择入住方式: 1. 按天入住2.按小时入住input: 2outpu

23、t:以下是现有的空房 :A101号 A 型 SINGLE日租金 150 时租金20请输入要入住的房屋input: A101output:请选择小时数input: 5output:已成功登记房间您的房号为: A101请支付 100 元的房租及押金200 元2、 void search_room(room *p)/住房查询函数用例: input: room a20output:目前的空置房间有:A102号 B 型 SINGLE日租金 150 时租金20A105号 C型 SINGLE日租金 300 时租金40有顾客入住的房间:B104号 C型 SINGLE日租金 300 时租金403、 void s

24、earch_customer(room *p,int l)/房客查询函数用例: input: room a20 j=3 output:请输入要查询的用户:input: DANNYoutput: DANNY id 10086 A101 100 2004、 void pay(room *p, int l)/结账退房函数用例: input: room a20 j=3 output:请输入input: DANNYoutput:已成功退房5 软件使用说明书.下载可编辑 .本程序是专门为酒店设计的管理系统,方便操作员的操作。通过主界面,我们可以进行登记、查询房间、查询费用、退房及退出等操作。通过登记界面,可以实现用户登记及住房登记、调整等功能。通过费用查询界面,可以通过查找顾客的入住信息。通过房间查询界面,可以查找房间的使用情况。.下载可编辑 .通过退房界面,仅通过输入就可以完成退房。.下载可编辑 .致谢此次的程序设计题目做的很是辛苦。由于本人基础很差,所以花费了大量的时间,但最后总算成功完成。这与老师的耐心指导是分不开的,同时我也在老师身上学到不少东西。因此特在此对我的任课老师表示感谢!同时也要感谢所有帮助过我的同学。.下载可编辑 .

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!