c语言的酒店管理系统.docx

上传人:小飞机 文档编号:2031772 上传时间:2023-01-02 格式:DOCX 页数:36 大小:358.77KB
返回 下载 相关 举报
c语言的酒店管理系统.docx_第1页
第1页 / 共36页
c语言的酒店管理系统.docx_第2页
第2页 / 共36页
c语言的酒店管理系统.docx_第3页
第3页 / 共36页
c语言的酒店管理系统.docx_第4页
第4页 / 共36页
c语言的酒店管理系统.docx_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《c语言的酒店管理系统.docx》由会员分享,可在线阅读,更多相关《c语言的酒店管理系统.docx(36页珍藏版)》请在三一办公上搜索。

1、 软件课程设计设计(论文)用纸基于C语言的酒店管理系统课程设计 学院: 通信与电子工程学院 班级: 电子102班 学号: 2010131085 2010131012 姓名: 邹远文 王帅 指导老师: 题原 日期: 2013年11月27日 摘 要随着个人计算机的的普及,越来越多的重复性工作被交由计算机来完成。在这种大趋势下,传统的纸质档案管理方式已不适应现代服务业的发展。数字化的管理成为酒店等行业的必要条件。酒店客房管理的电脑化对于优化员工工作效率、降低成本及改善服务质量等方面都有十分积极的作用。本程序是用于酒店管理的软件。它可以实现定退房业务处理,用户信息的记录、查询及房间状态管理等功能。虽然

2、比较简陋但已具备应用程序的雏形。经济上主要考虑本系统带来的效益是否大于开发本系统的成本,由于本系统的开发以课程设计为依托,参与人员的目的以学习为主,投入成本比较小。另外,系统管理员和业务员都拥有计算机的专业知识,酒店前台工作人员和管理人员不需要经过培训或只需要经过少量培训即可操作本软件。这样可以为开发本系统节升资金。同时无纸化办公可以节省资源,减少后期资源浪费。因此,开发本系统在经济是可行的。本程序运用Microsoft Visual C+编译器编写,涉及C语言的文件读写,结构数组运用及字符串函数相关知识。关键词:数字化管理 酒店管理 C语言 目 录 摘 要I第1章 绪论11.1概述11.1.

3、1酒店管理系统的需求11.2 酒店管理系统的当前需求11.3酒店管理系统的可行性2第 2 章 酒店管理系统的功能实现32.1设计模块32.1.1添加录入信息模块32.1.3删除客房信息模块32.1.4查询剩余客房函数32.1.5排序剩余客房模块32.1.6输出剩余客房函数32.1.7 点餐系统42.2管理员登陆流程42.2主要功能模块数据流程图52.3管理员预处理流程62.4登记入住系统62.5客房状态查询62.6住户信息查询72.7结账退房系统72.8系统管理72.9系统详细设计任务7第 3 章 系统物理配置方案设计83.1设计指标8 3.1.1系统的可靠性83.1.2系统吞吐量83.1.3

4、系统响应时间83.2计算机硬件配置8第4章 软件分析与设计94.1 软件运行截图94.1.1 登陆界面94.1.2入住与选择界面94.1.3 查询界面104.1.4 点菜界面114.1.5退房结账界面13结论14参考文献15附录16 第1章 1.1概述随着旅游业的发展,酒店、餐饮娱乐行业日趋发达,引入全方位的电脑服务和电脑管理日益流行。同时,酒店和餐厅娱乐业引入电脑服务和管理也取得了优良的经济效益和社会效益。为此,国家建设部已于最近作出明确规定:凡星级酒店在项目审批时,其设计方案必须包括电脑管理系统,否则不予立项。可见,酒店管理电脑化势在必行。酒店管理系统将先进的电脑技术与现代酒店服务管理完美

5、地结合起来,实现了住宿、餐饮、娱乐全新概念的服务和管理方式。1.1.1酒店管理系统的需求传统的酒店管理往往令管理者花大量的时间来处理顾客投诉,例如错误查询、烦琐的登记和结帐手续、旅客费用计算错误、空余客房资料不能及时提供等,从而影响出租率,使的管理人员不得不集中精力规划管理运行策略和进行决策。以上问题可通过电脑系统辅助解决,酒店管理的电脑化,不仅是体现酒店现代化形象的一个重要标志 ,而且对于提高员工工作效率,加速资金周转、降低各项成本及改善服务质量都有十分积极的作用。随着社会经济的发展,人们对生活质量的要求越来越高,作为服务之一的酒店业也在不断的完善服务体制。它是集餐饮、住宿、娱乐于一体的立体

6、化服务体系,其中顾客可以随意消费并统一结账;宾馆管理者可及时了解酒店的全部运营情况及经营走势,找出运转成本,作为经营决策的依据。只有运用先进的科学管理手段,利用计算机管理系统才能更好实现这一管理模式。1.2 酒店管理系统的当前需求酒店管理信息系统是用来收集、处理、存贮和传播客房、顾客、结算信息,以信息管理为核心的计算机应用系统。利用酒店管理信息系统中合理的数据库结构来保存数据信息,及时了解各个环节中信息的变更,通过有效的程序结构来支持各种数据操作的执行,以提高管理效率,实现酒店服务的系统化、规范化、自动化。通过该项目的开发与使用,可实现以下功能:(1).快速实现客人入住登记和账务处理,减少客人

7、住店及离店时的等待时间(2).准确实现客人预订入住的要求,实现有效及有保障的前台系统作业(3).快速响应住宿客人的有关项目查询要求(4).实现入住、消费、结账一条龙服务,方便客人在店内的各类消费要求 1.3酒店管理系统的可行性随着计算机技术的飞速发展,信息时代的到来,信息改变了我们这个社会。各类行业在日常经营管理各个方面也在悄悄地走向规范化和网络化。客房管理的信息化程度体现在将计算机及网络与信息技术应用于经营与管理,以现代化工具代替传统手工作业。无疑,使用网络信息化管理使客房管理更先进、更高效、更科学,信息交流更迅速。酒店管理系统是典型的信息管理系统的一部份,而且是必不可少的一部份。其开发主要

8、包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起简洁且资料一致性和完整性强、资料安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。酒店管理系统是酒店经营管理中不可缺少的部分,它的内容对于经营的决策者和管理者来说都至关重要,所以客房管理系统、信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多弊端,如:效率低、保密性差,容易出现差错等,且对于查询空房间及已定房间等极为不方便。在当今时代,这些完全可以改用计算机来代替人的手工操作。作为计算机及网络应用的一部分,使用计算机对酒店信息进

9、行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高客房经营管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。且办事效率也是决定收入的一个关键因素。 第 2 章 酒店管理系统的功能实现该管理系统适用于各类中小型酒店的客房资源和客户信息的管理,实现了酒店的信息化管理,该系统主要包括基础信息设置、客房前台管理、查询统计管理、挂账管理、系统初始设计、系统维护等功能。 2.1设计模块按照需求分析所得,客房信息系统有以下几个功能模块:2.1.1添加录入信息模块编写指针摸板,定义临时的客房间数,包括其各项类的成

10、员,编号,类型,定房日期,价格,客房内容,入住天数。2.1.2修改客房信息模块读取保存的客房信息数据,根据客房编号查找所需修改的客房信息,然后根据具体所需,修改成员参数,并保存。2.1.3删除客房信息模块从保存中的文件中读取信息,删除需要删除的信息,完善现在的客房运作。2.1.4查询剩余客房函数分按编号、类型、价格查询,这样可以更具有人性化来选择所剩余的客房,从而进行日常安排。2.1.5排序剩余客房模块根据具体所需排序,可以是编号、价格或者类型,本系统中根据的是客房入住的天数来排序。 2.1.6输出剩余客房函数输出根据系统所需排序后的客房信息,本系统中是根据了客人入住的有效期即天数来及时了解空

11、出的房间。2.1.7 点餐系统给用户提供用餐的点餐系统,通过菜单来点相应的酒水和菜品,最后通过和房间的匹配来统计价格。 图21 功能结构图2.2管理员登陆流程登录入口取得用户名和密码将UserID存入session中输入用户账户核对密码是否正确登录成功是是否否图2-2登陆流程2.2主要功能模块数据流程图2-3 功能模块流程图2.3管理员预处理流程客人无空房客人客人查询客人信息表收 银住房押金入帐表查询空房房间占用信息表入住登记表有无空房间交款 图2-4 前台处理流程 2.4登记入住系统 (1). 登记并记录顾客姓名 (2).登记并记录顾客的证件类型及号码 (3).显示现有空置房间 (4).选择

12、所需要的房间并更改房间状态信息 (5).计算并记录住房费及押金由于本软件针对操作员设计,所以界面应尽可能简单明了。住房及顾客信息由于涉及多种类型的数据,因此应用结构数组处理。用文件记录相关数据。 2.5客房状态查询分别显示已入住客房与空置客房读取住房信息文件的内容并判断分类,借此可以清晰明了的显示客房状态。剩余客房信息查询,可以通过系统对宾馆内剩余的客房进行查询,可以了解到未被预定及未被使用的客房的编号、客房编号、客房类型、客房位置、客房单价等。 2.6住户信息查询 (1).查询顾客所租房房号 (2). 查询顾客住房费用顾客可以通过输入自己的姓名来查询个人的住房信息。 2.7结账退房系统 (1

13、).退房 (2).更新所退房间状态 (3).删除退房用户记录 (4).显示账单顾客可以输入姓名来完成退房操作,房间状态将更改为未入住。系统将删除该用户信息记录并读取生成账单。 2.8系统管理 (1).房间设定 (2).更改密码 (3).系统设置系统管理是每个系统所必须具备的功能,主要是对操作该系统的使用者进行管理(即用户管理),包括用户的增加、删除、密码的修改以及管理各用户操作该系统的权限。并且实现房间基本设置功能以及各种系统设置功能,比如说房价设置等等。 2.9系统详细设计任务 (1).算法过程的设计:本详细设计采用的是流程图的方式来表达每个处理过程的算法; (2).数据结构的设计:对于处理

14、过程中涉及的概念性的数据类型进行确切的定义; (3).测试用例设计:测试用例包括输入数据和预期结果等内容。 第 3 章 系统物理配置方案设计 3.1设计指标任何系统都应该以用户需求为最终目标,以方便用户为最高原则,同进要融入先进的管理经验与技巧。该系统努力根据用户的实际需求功能情况,度身订造一套先进的管理系统,并且将在统一的Windows NT/9X图形界面下提供各种实用功能,尽可能降低使用前的培训、实施和使用中的维护时间。力求满足现在及未来的各种需求,真正为管理及决策提供强有力的支持。3.1.1系统的可靠性该系统要求24小时不间断工作工作,发生错误的概率低于0.01%。3.1.2系统吞吐量要

15、提高系统的吞吐量,就要求使用具有大吞吐量的计算机。应该选择具有较高性能的计算机。 (1).系统响应时间响应时间不超过2秒 (2).系统处理方式该系统采用主机系统方式。 (3).地域范围本系统采用局域网方式。 3.2计算机硬件配置 计算机硬件选择取决于要运行的软件系统,本系统建议最低采取如下配置:(1)内存:128MB(2)CPU:奔三1.0GHZ以上(3)硬盘:空余空间4G(4)编译软件:microsoft visual C+ 6.0 第4章 软件分析与设计 运行程序后进入主界面,首先需要管理员权限的账号密码才可以进行登记入住、查询房间、查询顾客、退出程序等几项操作,否则无法进入程序。 4.1

16、 软件运行截图 4.1.1 登陆界面 图 4-1 登陆界面 输入用户名和密码即可进入: 图 4-2 管理员登陆界面4.1.2入住与选择界面输入对应的数字,选择不同的功能如选择入住功能,输入姓名和身份证号: 图 4-3 登记注册4.1.3 查询界面按照顾客姓名查询所住房间: 图 4-4 房间查询查询房间入住情况: 图 4-5 房间剩余查询4.1.4 点菜界面 点菜功能的实现: 选择点菜功能,即可显示菜单,输入相应的代码即可选择菜品和份数: 图 4-6 菜单 输入菜和酒水的名字,系统会提醒所要点的份数: 图 4-7选择数量 点菜完成后会显示点菜数量和金额: 图 4-8 显示点菜数量和总价格 同时会

17、显示提醒输入点菜的客房房号: 图 4-9 记录点菜的房间号4.1.5退房结账界面 退房结账时,会显示住房消费和用餐消费金额,同时提醒押金是否足够,如果够则退回,不够则提醒补交: 图 4-10 退房结算 退房成功后系统会提醒退房成功,同时清除顾客信息! 结论通过对酒店管理系统的编写,更加掌握了C语言的基本语法,巩固了以前所学的C语言知识。同时在C的设计过程中,对C语言运用循环,自定义函数等方面的思想有了更加深刻的认识,体会到了高级编程的强大,对以后编写程序有了很好的初步认识。 通过这周的课程设计,也认识到自己对于C语言的一些不足之处,在对书本的知识点还有些掌握的不够透彻,在一些编程的地方可以更加

18、优化代码,以最少的代码实现最强大的功能。在指针和链表方面,以后也还需要和老师同学探讨,让以后的C语言编程中能够合理的运用这些C语言里的精华内容。 参考文献1 谭浩强. C程序设计(第三版). 清华大学出版社.2005年 2何钦铭 颜晖.语言程序设计.高等教育出版社.2008年3 陈强 .C语言核心开发技术从开发到精通.电子工业大学出版社.2006年 4严蔚敏、吴为民.数据结构(C语言版).清华大学出版社.2007年5周二强.新编C程序设计.清华大学出版社.2011年 6钱能.C+程序设计教程.清华大学出版社.1999年 7邓文华.数据结构实验和实训教程.清华大学出版社.2011年 8 高寒弢.

19、最短路径算法在交通咨询系统中的应用.计算机与信息技术.2011年 附录程序源代码:#include #include #include #include#includewindows.h/*int initial_room(); /初始化80个房间信息int welcome(); /验证用户登陆,登陆成功显示欢迎信息int enter();int check_in();int check_out();int inquire();int diancai1();int i=0;int caijia=0;int pay=0;typedef int ElemType;/*struct Room int

20、 number; int rank; int price; int state;struct Customer char name13,ID19; int room_number; int pay; int change; int day;char caiming;int caijia;int set_name(struct Customer *cs, char *n) strcpy(cs-name,n); return 14;int set_ID(struct Customer *cs, char *p) strcpy(cs-ID,p); return 13;int set_room_num

21、ber(struct Customer *cs, int n) cs-room_number=n; return 12;int set_day(struct Customer *cs, int d) cs-day=d; return 11;char *get_name(struct Customer *cs) return cs-name;char *get_ID(struct Customer *cs) return cs-ID;int get_room_number(struct Customer *cs) return cs-room_number;int get_day(struct

22、Customer *cs) return cs-day;/*struct Room room60;struct Customer *customer60;/diancaistruct cai /*cai结构体 实现对菜品 已点份数、名称、原材料 的记录*/int fenshu; char name50; int use;int price;struct List /*该线性表实现对菜品原材料的剩余量的记录,线性表【i】对应菜品的点餐菜单编码*/ ElemType* list; int size;int MaxSize;/*以下为线性表的函数*/void InitList(struct List

23、* L,int ms) if(msMaxSize=ms;L-list=malloc(ms*sizeof(ElemType);if(!L-list)printf(动态存储分配失败!); exit(1); L-size=0;void againMalloc(struct List *L)ElemType *p=realloc(L-list,2*L-MaxSize*sizeof(ElemType);if(!p)printf(分配存储空间失败!);exit(1);L-list=p;L-MaxSize=2*L-MaxSize;void InsertLastList(struct List *L,Elem

24、Type x)if(L-size=L-MaxSize)againMalloc(L);L-listL-size=x;L-size+;/*表格函数*/int cddayin(struct cai a)int i=0,j=0;for(i=0;i0)j+;if(j!=0)printf(已点菜/酒品编号 已点菜品名称 已点份数/瓶数 价格n); for(i=0;i0) printf( %5d %10s%14d %d¥ n,i,ai.name,ai.fenshu,ai.fenshu*ai.price); caijia=caijia+ai.fenshu*ai.price; printf( 您好,您点餐价格合

25、计=%d¥n,caijia); return caijia; if(j=0) printf(顾客尚未点餐,无法进行菜单打印!n);void ycliao(struct List *yuan,struct cai a)int i=1,p=0,k=0,num;for(i=0;ilistp=yuan-listp-ai.fenshu;ai.use=ai.use/100;while(ai.use!=0);printf(请输入房间号:);scanf(%d,&num);if(num=101&102&103&104&105)printf(|-|-|n);printf(|-原材料余量-|-酒品余量-|n);pr

26、intf(|-|-|n);printf(| 10.鸡肉=%3d 11.猪肉=%3d 12.鱼肉=%3d | 50.雪花啤酒=%3d |n,yuan-list10,yuan-list11,yuan-list12,yuan-list50);printf(| 13.黄瓜=%3d 14.土豆=%3d 15.豆腐=%3d | 51.燕京啤酒=%3d |n,yuan-list13,yuan-list14,yuan-list15,yuan-list51);printf(| 16.茄子=%3d 17.青椒=%3d 18.牛肉=%3d | 52.二锅头=%3d |n,yuan-list16,yuan-list1

27、7,yuan-list18,yuan-list52);printf(| 19.大葱=%3d 20.鲜鸭血=%3d 21.花生=%3d | |n,yuan-list19,yuan-list20,yuan-list21);printf(| 22.花椒=%3d 23.酱=%3d 24.胡萝卜=%3d | |n,yuan-list22,yuan-list23,yuan-list24);printf(| 25.辣椒=%3d 26.芹菜=%3d 27.豆皮=%3d | |n,yuan-list25,yuan-list26,yuan-list27);printf(|-|-|n);printf(|-|-|n)

28、;void diancai(struct cai a,struct Customer *cs )int p=0,wep=0; /*printf(请输入房间号n); scanf(%d,num);for(i=0;iroomn.number=num)*/doprintf( |-|-|n);printf( |-菜品(输入-1确认并结束点餐)-|-酒品-|n);printf( |-|-|n);printf( | 1.红烧狮子头 2. 飘香桂鱼 3.京酱肉丝 21.长城干红 |n);printf( | 4.爆炒竹鸡 5.水煮鱼 6.日本豆腐 | 22.喜力啤酒 |n);printf( | 7.夫妻肺片 8

29、.拍黄瓜 9.莲子羹 | 23.人头马 |n);printf( |-|-|n);printf( |-|-|n);scanf(%d,&p);system(CLS); if(p=1&p50)system(CLS);printf(您输入的值异常或过大,请您检查输入的值!n);continue;/*防止误输入*/else if(wep=21&p50)system(CLS);printf(您输入的值异常或过大,请您检查输入的值!n);continue;/*防止误输入*/else if(wepcaijia=cddayin(a);void ycldayin(struct List yuan,struct c

30、ai a)char l=0;printf(显示原材料余量?(Y/N)n);l=getch();if(l=Y|l=y)system(CLS);ycliao(&yuan,a);elsesystem(CLS);printf(nnnn);int diancai1(struct Customer *cs)int i=0;char l=0;struct List yuan; /* yuan前不用加“*” */struct cai a60=0,0,0,0,宫爆鸡丁,10131421,15,0,飘香桂鱼,1124,14,0,京酱肉丝,112327,16,0,爆炒竹鸡,141617,10,0,水煮鱼,122225,50,0,日本豆腐,152225,11,0,夫妻肺片,18212625,17,0,拍黄瓜,13252223,8,0,莲子羹,20,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,长城干红,50,300,0,喜力啤酒,51,20,0,人头马,52,500,0,0,0,0,0,0,0,0,0,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号