C语言课程设计-酒店客房管理系统说明书_第1页
C语言课程设计-酒店客房管理系统说明书_第2页
C语言课程设计-酒店客房管理系统说明书_第3页
C语言课程设计-酒店客房管理系统说明书_第4页
C语言课程设计-酒店客房管理系统说明书_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、* 实践教学实践教学 * 兰州理工大学兰州理工大学计算机与通信学院 2010 年春季学期 计算机语言计算机语言 课程设计课程设计题 目:宾馆客房管理系统专业班级: 姓 名: 学 号: 指导教师: 成 绩: 目目 录录摘摘 要要.1前前 言言.2正正 文文.31. 问题描述.32. 需求分析.33. 系统总体设计.34. 详细设计.45. 系统测试.66. 软件使用说明书.7总总 结结.9参考文献参考文献.10致致 谢谢.11附件附件 部分原程序代码部分原程序代码.121摘摘 要要宾馆客房管理系统是以客房管理业务为背景,设计开发的一套软件。该程序主要实现对宾馆的业务流程进行管理,具有浏览,增加和

2、删除功能,方便管理。同时实现把保存在文件中的数据读出,依次存放在一个列表中,再被列表行行操作来实现相应的功能。在用户退出时再把列表中的内容保存回文本文件中。同时,这一套系统也是应该数据库原理,在数据结构管理的基础上,应用 C 语言创编的源程序。其调用函数共分七个大的模块。在编制好程序之后,要对程序进行相应的调试,并且进行测试,以验证程序的正确性与可用性。调试及测试时,通过相关信息,充分验证程序的可用性。本程序通篇均用 C 语言写成,具有很高的严密性,测试应用宾馆实例,具有很高的真实性与可靠性,这一点也充分验证了 C 语言在现代社会当中的实用性及普遍性。关键词:源程序代码;宾馆客房管理系统;链表

3、。2前前 言言在竞争激烈的现代市场中,随处都可用到系统,程序。可见,一套完整的系统对人们的生活显得尤为重要。当然,这些最主要的还是应用于与人们息息相关的宾馆等住宿情况当中。尤其是暑假即将来临之际,人们出行的机率在日益升高。为此,设计一套完整的宾馆客房管理系统对实现宾馆的系统管理显得尤为重要。随着我国经济的迅速发展,人们的生活水平有了显著提高,假日经济和旅游经济已成为人们消费的热点。各地也把旅游业当作本地经济发展的重要支柱之一,从而促进了宾馆酒店业的快速发展。同时,随着宾馆酒店越来越多,人们的要求越来越高,宾馆酒店业的竞争也愈来愈激烈。如何在激烈的竞争中生存发展,是每一个宾馆酒店必须面临的问题。

4、对宾馆的经营状况起决定作用的是宾馆的服务管理水平。如何利用先进的管理手段,提高宾馆的管理水平,已成为宾馆酒店业发展的当务之急。面对信息时代的机遇和挑战,利用科技手段提高企业管理无疑是一条行之有效的途径。虽然计算机管理并不是宾馆管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对宾馆的服务管理提供强有力的支持。因此,采用全新的计算机网络和宾馆管理系统,已成为提高宾馆的管理效率、改善服务水准的重要手3段之一。在某种意义上,宾馆客房管理方面的信息化已成为现代化宾馆的重要标志。4正正 文文1 1 问题描述问题描述随着改革开放步伐的加快,我国服务业取得了巨大的发展。而宾馆是我国的改革

5、开放过的程中起步最早的、开拓发展最快、收效最为明显、市场化程度高的服务行业之一。据统计,宾馆业目前网点总量已达 300 万家以上,宾馆数量的迅猛增长,是宾馆必须面临的问题。对宾馆的经营状况起决定作用的是宾馆的服务管理水平。如何得用先进的管理手段,提高宾馆的管理水平,已成为宾馆行业的当务之急。面对信息时代的机遇和挑战,得用科技手段提高企业管理无疑是一条行之有效的途径。虽然计算机管理并不是宾馆管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对宾馆的服务管理提供有力的支持。因此,采用全新的计算机网络和宾馆管理系统,已成为提高宾馆管理效率、改善服务水准的重要手段之一。2 2 需求

6、分析需求分析针对某宾馆的位置、面积、职工人数、宾馆所设有的标间、双人间、套间等,间数、床位数、同时能接待的人数,宾馆里所拥有的设备,如电话、电梯、空调、现代消防设施、大小餐厅、停车场、会议室,同时提供的代购火车票,飞机票,汽车票等各种辅助服务项目。对该宾馆在发展过程中意识到要想在竞争中取得优势,必须首先提高经营管理,而提高经营管理最重要的保证就是信息技术。宾馆应审时度势,针对宾馆内部管理需求和宾馆酒店业的发展前景,决定首先在客房管理上采用计算机技术。客房管理系统主要实现客房的租借管理等,将客户信息和情况统一归入到数据库,可以实现客房的有效监控,为租借管理提供方便的管理窗口,同时有利于寻找客户或

7、者协助治安管理。所以,据该宾馆的具体情况,研制开发了宾馆客房管理系统,系统的主要功能设计有:(1)基础信息程序设计:客房信息类别、员工信息设计、挂账单位信息。5(2)客房前台程序设计:客房预定、住宿登记、宿费提醒、退宿结账。(3)查询统计管理设计:客房查询、房态查询、预定房查询、住宿查询、退宿查询、(4)挂账管理:挂账查询、客人结款、(5)系统初始设计:本单位定义、业务部门定义.更具体来说管理系统分两大块:数据库的后台管理和前台客房住宿情况的管理后台管理包括以下部分:客房信息的输入:包括客房的大小级别、房间设备、预设租金等信息。3 3 系统总体设计系统总体设计 主函数 输入函数 修改函数 查询

8、函数 运算函数 删除函数 统计函数 退出6这是一个宾馆客房管理系统的总体设计,其中涉及到程序需要用到的各种函数。首先,进入该系统,进入主菜单函数,会出现各个功能列表,即相关函数。首先运行输入函数,若不运行输入函数,则进入下一个模块,进入修改函数,修改相关信息,若不修改,则进入下一个环节-查询函数,查询信息,否则运行下一个函数-运算函数。若要运行删除函数,则退出运算函数,最后可进入统计函数,进行统计。统计完毕之后,则自动退出系统函数,退出系统。 在运行完每个子函数之后均可返回主菜单函数,再次实现循环运行。4 4 详细设计详细设计(1) 修改客房信息的流程图输入所要修改的信息否 是 查到与否 否

9、是 无 修改与否无信息 此 否 是 信 放弃 修改 息返回头指针 退出 7(2)查询客房情况流程图输入查询客房号码输入记录信息继续查询客户情况 入住情况 输出 返回空指针(3)输入客房情况(enter)(输入客房号)(可输入相关客房信息)(输入能住的人数) 设置:有人 (have) 打印 (name) ( Sex) (Time) (Cost)无人 ( null) 输入相关信息后,返回主菜单,或退出系统。8(4)客房费用(cost) 输出(请输入客房号码) If(!(info=find(nember) Printf(“t 没找到n”); 找到相关客房,则Printf(“t 如果退房时间在 12:

10、00 后按一天时间计算n”);退主菜单,或退出系统。 (5)删除指定客房 输出(请输入指定客房号码) Scanf(“%s”,&number); Info=find(number); if(start=info), start-prior=0;否则 删除指定客房(6)统计客房情况(tongji) 输出(统计未住客房号码输入 1 已住客房号码输入 2) Scanf(“%d”,&c); 如果给 c 的初始值赋为 1,则运行 info=start; 输出(客房号码) Count+; Info=info-next; 输出(共有未住客房%d 个) 继续运行,并输出(共有已住客房%d 个)

11、(7)退出系统(tuichu)9 输出(建议您最好存盘如果存盘输入 1 不存输入 2)If(c=1)save();If(c=2) 输出(谢谢您使用本系统) Exit(0);-退出该系统。5 软件测试软件测试6 6 软件使用说明书软件使用说明书这是一套典型的宾馆管理系统,首先单击进入主菜单,系统会自动提示“请选择功能” ,并同时出现功能列表,它们依次是:“1 输入客房情况” “2 修改客房情况” “3 查询客房费用” “4 客户费用” “5 删除指定客房” “6 统计客房情况” “7 退出系统” 。该系统共包括以上这七种功能,若要进行其一,只需选择功能前面的数字,即可进入该功能子菜单。然后就可以

12、按照系统提示的功能依次进行操作,若操作完毕,即返回主菜单或退出系统。10总总 结结通过对“宾馆客房管理系统“的程序设计,我更深刻地了解了软件开发的重要性,同时,我解决实际问题的能力也得到了提高。我所设计的宾馆客房管理系统是以宾馆客房管理业务为背景的,通过调研和分析现有的宾馆管理模式和已有的管理软件,我建立了一套完整的系统模型。先从整体框架入手,编写一份结构模型,从而绘制一份完整的程序流程图,再根据流程图确定要调用的函数及总体数据结构,完成系统的程序编写,编写出宾馆客房管理程序。最后进行程序调试并进行测试工作,经测试,充分验证了该程序的正确性。上一周刚开始设计程序时,我还是没有一丝头绪,甚至不知

13、道该做些什么,但经过一周的努力,我找到了自己的设计方向,凭着自己所学的知识和自己所了解的东西,在老师的悉心指导下,完成各项任务。虽然有许多时候感到困难重重,甚至没有信心,但自己的付出也总算有了回报。我相信,我的努力会得到老师的承认和大家的认同,并且我也会以此为基础,更深入地学好这门课程。通过这次做课程设计,我学到了许多以前没有学到的东西,认识了许多自己以前没有认识到的问题。通过这段时间的学习,我更深刻地感受到设计程序是我们的一门必修课。11参考文献参考文献 1 王萍.面向对象程序设计. 北京:清华大学出版社,2002.9 2 徐孝凯.面向对象程序设计实验.北京:中央广播电视大学出版社,2003

14、.8 3 邵维忠.杨芙清. 面向对象的系统分析. 北京:清华大学出版社,1998.8 4 郑人杰.殷人昆等. 实用软件工程. 北京:清华大学出版社,1997.4 5 谭浩强. C 程序设计(第二版). 北京:清华大学出版社,1999.6 6 谭浩强. C 语言程序设计教程(第二版). 北京:高等教育出版社,1997 .97 杨路明. C/C+程序设计教程. 湖南:湖南科技出版社,2001.5 8 赵建强. 机床挂轮计算程序. 机械与电子,1994.4 9 赵建强. 利用微机计算棉纤维长度指标. 纤维标准与检验,1994.4 1210 赵建强. 利用微机计算梳片法长度指标. 苎麻纺织科技,199

15、4.713致致 谢谢通过这一段时间的学习分析,并同老师的交流,锻炼了我分析问题的能力,同时培养了我解决实际问题的能力。如果没有老师的耐心讲解,我不会认识到自已的不足;如果没有老师的热心提示,我不会发现自已的问题所在;如果没有教师的热情帮助,我不会顺利地完成学习任务。为此,我衷心地感谢老师在这一段时间的悉心指导,同时谢谢老师这段时间的付出与努力,使我对这门课充满了浓厚的兴趣,我更应该感谢学校给我们提供了这样的条件和机会,使我对 C语言这门课有了更深的认识,为此,我真诚地道一声:谢谢你们! 14附件附件 部分原程序代码部分原程序代码#includestdio.h#includestdlib.hst

16、ruct homechar roomNO20;char name20;char sex10;char person10;char time10;char contain10;char money10;struct home *next;struct home *prior;list_entry;struct home *start;struct home *last;void search1();main() int b; struct home *info; start=0; for(;) switch(menu_select() case 1:enter();break; case 2:a

17、lter();break; case 3:search();break; case 4:cost();break; case 5:delete();break; case 6:tongji();break; case 7:tuichu(); menu_select() int c; printf(tt=n);15 printf(tt=n); printf(tt= 宾馆客房管理系统 =n); printf(tt= 请选择功能 =n); printf(tt= 1 输入客房情况 =n); printf(tt= 2 修改客房情况 =n); printf(tt= 3 查询客房情况 =n); printf

18、(tt= 4 客房费用 =n); printf(tt= 5 删除指定客房 =n); printf(tt= 6 统计客房情况 =n); printf(tt= 7 退出系统 =n); printf(tt=n); printf(tt=n); do printf( 请按数字选择n); scanf(%d,&c);getchar(); while(c10); return c; enter() struct home *info,*dls_store(); char s10; char a10=have; for(;) info=malloc(sizeof(list_entry); if(info

19、=0) printf( 内存已用完n); return; inputs( t 客房号码 n,info-nember,10); if(!info-nember0) break; inputs( t 能住的人数n,info-contain,10); inputs( t 有人输入 have 无人输入 nulln,info-person,10); if(!strcmp(a,info-person) inputs(t 姓名:n,info-name,10); inputs(t 姓别:n,info-sex,10); inputs(t 住入时间:n,info-time,10); inputs( t 有人时输入

20、时间无人输入n,info-time,10); inputs( t 输入客房费用n,info-money,10); start=dls_store(info,start); inputs(prompt,s,count) char *prompt; char *s;16 int count; char p255; do printf(prompt); gets(p); if(strlen(p)count) printf( 太长啦n ); while(strlen(p)count); strcpy(s,p); struct home *dls_store(i,top) struct home *i,

21、*top; static struct home *last=0; struct home *old,*p; if(last=0) i-next=0; i-prior=0; last=i; return i; p=top; old=0; while(p) if(strcmp(p-nember,i-nember)next; else if(p-prior) p-prior-next=i; i-next=p; p-prior=i; return top; i-next=p; i-prior=0; p-prior=i; return i; old-next=i;17 i-next=0; i-prio

22、r=old; last=i; return start; alter() struct home *info,*find(); char roomNO20; char a10=have; char c10=null; int b; printf( t 如想查看客房情况输入 1n); printf( t 想修改输入 2n); printf( t 不想修改输入 3n); scanf(%d,&b); if(b=1)search(); if(b=2) printf( t 请输入要客房号码n); scanf(%s,nember);getchar(); if(!(info=find(nember)

23、printf(t 没找到n); else display(info);printf(t 下面是修改项目n); if(!strcmp(a,info-person) inputs(t 请输入 null:n,info-person,10); if(!strcmp(c,info-person) inputs(t 请输入名字n,info-name,10); inputs(t 请输入性别n,info-sex,10); inputs(t 请输入时间n,info-time,10); if(b=3) return; struct home *find(nember) char *nember; struct h

24、ome *info; info=start; while(info) if(!strcmp(nember,info-nember) return info; info=info-next; printf( t 没找到n); return (NULL);18 display(info) struct home *info; char a10=have; printf(t 客房号码: %sn,info-nember); printf(t 能住人数: %sn,info-contain); printf(t 无人住时显示 null 有人住时显示 have:%sn,info-person); if(!s

25、trcmp(a,info-person) printf(t 名字%sn,info-name); printf(t 性别%sn,info-sex); printf(t 时间%sn,info-time); printf(t 客房每天费用: %sn,info-money); printf(n); search() int b; printf( t 查询只定客房输入 1n); printf( t 查询已住客房输入 2n); printf( t 查询未住客房输入 3n); printf( t 返回主菜单请输入 4n); do scanf(%d,&b); switch(b) case 1: sea

26、rch1();break; case 2: search2();break; case 3: search3();break; case 4: return; while(b5); void search1() char nember10; struct home *info,*find(); printf( t 输入房号码n); scanf(%s,nember); getchar(); if(!(info=find(nember) printf( t 没找到n); else display(info); 19search2() struct home *info; char a10=have

27、; info=start; while(info) if(!strcmp(info-person,a) display(info); printf(n); info=info-next; search3() struct home *info; char b10=null; info=start; while(info) if(!strcmp(b,info-person) display(info); printf( n ); info=info-next; save() register int t,size; struct home *info; char *p; FILE *fp; if(fp=fopen(mlist,wb)=0) printf( t 文件打不开n);20 exit(0); printf(t 正存入内存n); size=sizeof(list_entry); info=start; while(info) p=(char*)info; for(t=0;tnext; putc(EOF,fp); fclose(fp); printf(t 已存完n); cost() char nember10; struct home *info; printf( t 请输入客房号码n); gets(nember); if(!(info

温馨提示

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

评论

0/150

提交评论