ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:217.32KB ,
资源ID:23994863      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23994863.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(酒店房间登记与计费管理系统《C语言课程设计》.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

酒店房间登记与计费管理系统《C语言课程设计》.docx

1、酒店房间登记与计费管理系统C语言课程设计C语言程序设计课程设计报告 学 院: _专业班级: 学生姓名: 学 号: 设计地点(单位)_ 计算机自主学习中心 _ 设计题目:_ 酒店房间登记与计费管理系统设计 完成日期: 年 月 日 指导教师评语: _ _ 成绩(五级记分制):_ _ 指导教师(签字):_ _ 摘要本次C语言课程设计我选择的设计任务是客房管理系统设计,这个管理系统是用C语言在VC 6.0 c+的编译器编译而成的。客房管理系统包括客户基本信息的录入、房间统计、用户个人费用及住房信息查询、自动结账、退出系统功能等。系统的开发主要由分析、查阅相关书籍和参考资料、程序设计、编写代码、运行实施

2、、调试和测试、维护和修改等阶段组成,其中信息管理和自动运行为开发的重点。在程序设计中结构体的调用与各函数、数组的调用为编译的重点部分。关键词:结构体 函数 数组课程设计任务书设计题目:酒店房间登记与计费管理系统设计学生姓名课程名称C语言程序设计课程设计专业班级计科11地 点I305/I306起止时间2012年1月9日1月13日设计内容及要求请你为XX酒店设计一个房间登记与计费管理系统。该系统中应包括所有房间的信息(房号、房型、基本描述、挂牌房价、入住状态)等,客人入住后应产生一条入住记录(基本信息包括:房号、客人姓名、客人证件类别、客人证件号、入住日期、押金情况),客人退房后要修正房间的入住状

3、态并产生相应的账单。 【题目要求】 (1)屏幕上出现一个界面,让操作员能够方便的选择所需要进行的操作,包括登记入住、查询房间的入住情况、查询当前费用、结账退房等操作。(2)对不同标准的房间实施不同的收费标准,也可以按天收费或按小时收费,可根据顾客需要在登记的入住的时候进行选择。 (3)在结账退房时,根据入住的时间,计费方式和房间单价计算出总费用。要求用C语言的文件操作语句将以上所有结果分别保存在文件中。 【输入/输出要求】 (1)应用程序运行后,先显示一个菜单,然后用户根据需要选择相应的操作项目。进入每个操作后,根据程序的提示输入相应的信息; (2)要求用户输入数据时,要给出清晰、明确的提示信

4、息,包括输入的数据内容、格式及结束方式等。根据题目要求,运用所学知识,完成设计和实现工作,并按照书写规范,撰写课程设计报告。设计参数(1)系统分析、设计正确。(2)结果以图表方式显示。(3)界面简洁、美观。(4)报告格式规范。进度要求周一:明确设计任务,学习相关基础知识周二:熟悉各知识点,进行基础练习周三:根据题目要求,进行设计和实现周四:根据题目要求,进行设计和实现周五:撰写报告,进行答辩参考资料1何钦铭 颜晖.语言程序设计.高等教育出版社.2008年2谭浩强 张基温.语言程序设计教程.高等教育出版社.2006年其它难点提示:首先分析题目的数据结构,看看要操作那些值;然后根据题意设计操作对象

5、的结构。可以使用结构体来描述其中较为复杂的对象例如往来帐目;确定结构体的定义;可以使用数组来保存数据,使用结构体数组来保存各类数据。说明.本表应在每次实施前一周由负责教师填写二份,院系审批后交院系办备案,一份由负责教师留用。.若填写内容较多可另纸附后。3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。教研室主任: 指导教师:伍建全/雷亮/焦晓军陈应祖/杨治明 2012年1月1日 1 软件需求说明书1.1需求分析随着时代的进步、科学的发展,对信息技术的要求也越来越高。而顾客对各大酒店和客房的要求也越来越高,酒店以前的全人工服务已经不能满足顾客和以及现代信息化时代的要求。顾客选择入住

6、酒店时也会选择更加现代化和信息化的更加方便快捷的现代化服务酒店。所以现在各大酒店也都向着信息化和现代化的方向发展,引进更加先进和方便的酒店管理和服务系统。计算机的自动化管理系统提高了酒店管理的管理水平和工作效率,增强酒店的竞争能力降低成本,为客户提供更加优质的服务。所以需要开发一个计算机系统来代替人工管理酒店客户入住登记和信息查询等方面的工作。使用该系统可以使酒店的服务更加快捷、准确和方便,减少大量的人工操作,提高了工作效率。1.2软件功能简介1.2.1 登记入住自动登记顾客的各人信息,包括顾客姓名、身份证件、证件号码、选择房间种类、计费方式、押金交付等功能。1.2.2 查询房间入住情况1.2

7、.3 查询当前费用1.2.4 结账退房1.3界面、数据结构要求屏幕上显示一个界面,界面要求简洁美观,让操作员能够根据具体的提示信息方便的选择所需要进行的操作。用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。2. 系统分析与设计2.1软件界面设计2.1.1 首页欢迎界面2.1.2 登记入住界面2.1.3 客户入住信息查询界面2.1.4 客户个人费用查询界面2.1.5 客户退房结账界面2.1.6 客户结账收退支付费用结账界面2.1.7 用户退出系统界面2.2软件的数据(结构)设计主要所用的结构体、函数和变量的数据类型struct date /定义结构体date,记

8、录入住和结账时间 int mon; /整形 int 格式控制符为%d int day; int hour; ; struct costoem /定义结构体costoem int num; /房间号 格式控制符为%d int kind; /房间种类 1-单人间 2-双人间 char name20;/客户信息 /字符型 char 格式控制符为%s char ID19; /身份证号 int h_money; /按小时收费价格 int d_money; /按天收费价格 格式控制符为%d struct date time; /入住时间 time被说明为data结构类型。成员名可与程序中其它变量同名,互不

9、干扰。 int flag; /入住状态,flag: 0无人入住 1按小时入住 2按天入住 int deposit; /押金roomM;2.3软件的算法设计2.3.1主要结构模块框图 结账退房 2.3.2 主要流程图2.3.2 具体模块使用结构流程 3.软件的实现3.1 核心功能再现#include#include#include#include#define M 60/程序所有功能所用函数void welcome(); /首页欢迎界面int dengji(); /用来登记入住 int lookfor_room();/用来查询房间入住情况int lookfor_price(); /用来查询当前费

10、用 int tuifang(); /用来结账退房 int find(); /用来查找入住人数 long h_jifei(); /按小时计费 long d_jifei(); /按天计费 int per_infor(); /显示个人信息 void yingzhifu(); /用来结账付款 int quit(); /退出函数 struct date /定义结构体date,记录入住和结账时间 int mon; int day; int hour; ; struct costoem /定义结构体costoem int num; /房间号 int kind; /房间种类 1-单人间 2-双人间 char

11、name20;/客户信息 char ID19; /身份证号 int h_money; /按小时收费价格 int d_money; /按天收费价格 struct date time; /入住时间 int flag; /入住状态,flag: 0无人入住 1按小时入住 2按天入住 int deposit; /押金roomM; /*个人信息函数*/ int per_infor(int k) char zhonglei30,fangshi30; switch(roomk.flag)/选择计费方式 case 1:strcpy(fangshi,按小时计费);break; case 2:strcpy(fang

12、shi,按天计费);break; default:break;/输入与原定比较不符合跳出循环 switch(roomk.kind) /选择房间种类 case 1:strcpy(zhonglei, 单人间);break; case 2:strcpy(zhonglei,双人间);break; printf(nntt-姓名: ); puts(roomk.name);printf(nn); printf(tt-身份证号: ); puts(roomk.ID);printf(nn); printf(tt-房间种类: ); puts(zhonglei);printf(nn); printf(tt-房间号:

13、); printf(%d,k+1);printf(nn); printf(tt-计费方式: ); puts(fangshi);printf(nn); printf(tt-押金: ); printf(%d元,roomk.deposit);printf(nn); printf(tt 入住时间: ); printf(2012年%d月%d日%d时nn,roomk.time.mon,roomk.time.day,roomk.time.hour); return(0); /*查询入住人数函数*/int find() int count=0,i; /查询房间数 for(i=0;i=10) feiyong=(

14、b+1)*money; /如果小时数大于10,则算为一天 else if(a=0) feiyong=b*money; /如果小时数大于0而小于10,则不计算小时 else a=a+24; /如果小时数小于0,则小时数加24,天数减一,按天数计费重新计算 b=b-1; if(a=10) feiyong=(b+1)*money; else feiyong=b*money; return feiyong; /返回费用值 /*按小时计费*/ long h_jifei(struct date end,struct date start,int money) long feiyong; int a,b;

15、a=end.hour-start.hour; /计算小时 b=end.day-start.day; / 计算天数 if(a0) printf(酒店应找还顾客%ld元,dif);/押金金额大于应支付 else printf( 顾客应再支付%ld元,dif*(-1);/押金金额小于应支付 /*退出函数,返回欢迎主菜单页面函数*/ int quit() int z; printf(您需要返回欢迎界面吗?1-是 2-否nn); scanf(%d,&z); if(z=1) / 返回欢迎界面 welcome(); else printf(* 谢谢您的惠顾,欢迎您下次光临!*!nn); exit(0); /

16、*欢迎主菜单页面*/ void welcome() int n=find(); int i,j; printf(&#&); printf(nntt-欢迎来到*酒店-nn); printf(ttt 1. 登记入住 nn); printf(ttt 2. 查询房间入住情况 nn); printf(ttt 3. 查询当前费用 nn); printf(ttt 4. 结账退房 nn); printf(ttt 5. 退出系统 nn); printf(tt总房间数: %d t入住人数: %d t空房间数: %d,M,n,M-n); printf(nn&#&nn); printf(ttt 请选择您所需的服务:

17、); scanf(%d,&i); switch(i) /控制选择项目 case 1:j=dengji();break;/进入相应操作目录 case 2:j=lookfor_room();break; case 3:j=lookfor_price();break; case 4:j=tuifang();break; default:printf( 欢迎您下次光临nn);输入错误退出 exit(0); while(j!=0) welcome(); /进入欢迎菜单主界面 scanf(%d,&i); switch(i) case 1:j=dengji();break; case 2:j=lookfor

18、_room();break; case 3:j=lookfor_price();break; case 4:j=tuifang();break; default:printf(nn* 欢迎您下次光临 *nn); exit(0); /*顾客登记入住函数*/ int dengji() int i,j,k,yajin,s,a,n; char ch,fangshi30; printf(nn# 登记入住 #nn); if(find()=M) /入住人数与房间总数相等 printf(当前房间已满,是否返回(Y/N): ); ch=getchar(); if(ch=y) return(1); /返回主菜单

19、else exit(0); printf(请选择房间类型:nn); printf(1.单人间 2.双人间nn); scanf(%d,&n); printf(可供您选择的房间有: nn); for(i=30*(n-1)+1,j=0;i30*n+1;i+) /单人间的j入住人数,i剩余房间数 if(roomi-1.flag=0) printf(%dt,i); j=j+1; if(j%5=0)printf(nn); printf(请输入您准备入住的房间号: ); /房间号kroomk-1 scanf(%d,&k); roomk-1.kind=n; roomk-1.num=k; printf(nn请选

20、择您的计费方式:(1.按小时收费为%d元/时-2.按天计费为%d元/天)t,roomk-1.h_money,roomk-1.d_money); scanf(%d,&s); while(s!=1&s!=2) printf(输入有误,请重新输入: ); scanf(%d,&s); if(s=1) roomk-1.flag=1; else roomk-1.flag=2; printf(nn请输入您的姓名: ); scanf(%s,roomk-1.name); printf(nn请输入您的身份证号: ); scanf(%s,roomk-1.ID); switch(n) case 1:yajin=80;

21、break; case 2:yajin=100;break; printf(nn您应当缴纳的押金金额为 %d元,yajin); printf(nn请输入您实际缴纳的押金金额: ); scanf(%d,&roomk-1.deposit); while(roomk-1.deposit5|i1) printf(nntt 输入有误,请重新输入: ); scanf(%d,&i); else if(i=1)/按顾客所住房号查询 printf(nn请输入房间号: ); scanf(%d,&j); if(roomj-1.flag=0) printf(nn此房间无人住nn); else printf(您的个人信息为: ); per_infor(j-1); break; else if(i=2)/按顾客个人信息查询 printf(nn请输入您的身份证号: ); scanf(%s,a); while(1) for(k=0;kM;k+) if(strcmp(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1