酒店客房管理系统的设计与实现

2014-10-20 01:46李喜乐杨润耀于洪基
建材发展导向 2014年5期
关键词:酒店客房客房语句

李喜乐 杨润耀 于洪基

摘 要:本文基于C语言和C++论述了酒店客房管理系统的设计与实现,运用“类”将客房信息管理、客户信息管理以及入住信息管理相互联系;运用各个函数实现具体功能。

关键词:酒店客房管理;C语言;C++类

1 系统需求分析

站在用户的角度上,酒店客房管理系统设计的目的及意义是:(1)为了较便利地在文件中录入相关的客房信息和入住信息;(2)为了较便捷地按个人需求或意愿来查询已保存的相关信息;(3)为了可以通过该系统修改已保存的相关信息。

基于以上考虑,该酒店客房管理系统所需实现的功能有客房信息、入住信息和客户信息的录入、查询、修改等功能。

2 总体设计

2.1 系统功能分析

根据系统的需求分析,本系统主要实现三大功能:(1)客房信息管理。录入客房信息:包括客房编号,价格,类型,容量,使用状况等信息的录入;查询客房信息:分别按照编号,价格,类型来查询客房,了解客房状况;修改及保存客房信息:修改客房的基本属性并进行保存;打印客房信息:将酒店中的客房信息实现全部打印在屏幕上,便于了解入住状况。(2)客户信息管理。录入客户信息:从入住信息调入客户客户的基本属性;查询客户信息:分别按照姓名,身份证号,订房日期来查询客户信息;修改及保存客户信息:修改客户基本属性并保存;打印客户信息:将所有入住过的客户信息打印出来,以便查看;(3)入住信息管理。录入入住信息:客户的基本属性包括入住客户的姓名,身份证号,性别,年龄,籍贯,电话,订房日期,入住时长等,以及入住的房号和房间类型;查询入住信息:分别按客户姓名,房号,入住时间,身份证号进行信息查询;修改及保存入住信息:修改入住客户的基本属性以及所住房间的号码和类型;打印入住信息:将入住信息打印出来,以便查询。

2.2 类的描述

本系统共分为五个大类,分别是:

Basicroom,Guestoom,Basicperson,Person,RoomPerson。

各个类及函数的关系如下图所示。

3 详细设计与实现

3.1 录入函数

录入函数运用在客房信息与客户信息中,在AddtheGuestroom()(输入客房函数)中,运用“cout<<”下面开始添加客房信息\n”;cout<<”客房编号:”;”提示用户输入信息;然后用if语句判断是否保存,若保存,创建一个输入文件流对象,创建并打开文件,通过语句“ofile<

3.2 查询函数

以客房信息中的Rfindbynum()(按编号查询客房)为例说明。首先定义各个变量,通过语句语句“ifstream f1(“Guestroom.txt”);”打开文件;通过if语句“if(!f1)”进行安全检查,若文件出错,打印“对不起,没有客房信息!”;若打开文件成功,进行while循环,循环条件:文件中内容没有读取完,语句“while(f1>>num1>>type1>>price1>>count1>>s1)”实现;如果找到了num==num1,就使flag=true;紧接着打印出内容cout<<”\t客房编号:”<

3.3 修改函数

首先定义Guestroom p[N];和Guestroom q;用于读取数据;string num1;int i=0;用于循环;bool flag=false;用于判断是否已找出所要修改的客房。然后语句:cout<<”\n请输入你要查找的客房编号:”; cin>>num1; 读取客房编号;语句“ifstreamifile(“Guestroom.txt”,ios::in);”打开文件;运用while(ifile)语句,当没有读到文件尾时,循环一直进行;再命令一个tellg指针和seekp指针,指到所要修改的一行;语句“ifile>>p[i].num>>p[i].type>>p[i].price>>p[i].count>>p[i].s;”读出文件内容,if(p[i].num==num1),找到,开始打印客房的原始信息,确认信息之后,开始修改该客房的信息。

修改完成之后,ofstreamofile(“Guestroom.txt”,ios::in|ios::out); ofile.seekp(j);再次运用指针,写到文件中指定位置,ofile<

3.4 数据的保存和装载

本系统中一共有三类信息:客房信息,客户信息,入住信息。分别保存在Guestroom.txt 文件,Person.txt文件和RoomPerson.txt文件中(用户可根据个人习惯更改名称)。其中,Guestroom.txt和RoomPerson.txt中的信息是通过录入函数写入文件中的,Person.txt中的信息是通过调入函数将RoomPerson.txt中部分信息复制进去,这几个函数在前面都已详细介绍。

数据的提取和写入是通过输出流和输入流来进行的,通过重载<<和>>,方便的提取和写入数据。friend istream&operator;>> (istream&fin;,Basicperson&p;){p.Pinput(fin);return fin;}friend ostream&operator;<<(ostream&fout;,Basicperson&p;){p.Pprt(fout);return fout;}同时还运用了read_ch,tellg,seekp来读取数据。

4 综述

本系统的类和函数有紧密的联系,函数又与文件紧紧相连,通过这几块大的知识相互结合运用再与C++中的异常,虚函数,模板等知识串联,实现了系统基本的录入,打印,查询,修改,删除功能。

参考文献

[1] 陈建平,刘维富等.Visual C++程序设计课程建设研究与实践[J].计算机教育,2007(12).

猜你喜欢
酒店客房客房语句
集团酒店客房安全管理问题探讨
酒店建筑中的客房设计思路之研究
环境艺术设计作品
重点:语句衔接
高校酒店客房教学中情景教学法的应用
酒店智能客房影院系统构建指引
第28次瑞典冰旅馆
烟囱里的客房
纽约有家“图书馆饭店”:有60间客房6000本藏书
如何搞定语句衔接题