完整版第五组酒店客房预订管理系统的设计与实现源代码Word格式.docx
- 文档编号:16460386
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:19
- 大小:18.94KB
完整版第五组酒店客房预订管理系统的设计与实现源代码Word格式.docx
《完整版第五组酒店客房预订管理系统的设计与实现源代码Word格式.docx》由会员分享,可在线阅读,更多相关《完整版第五组酒店客房预订管理系统的设计与实现源代码Word格式.docx(19页珍藏版)》请在冰豆网上搜索。
inttag;
//删除标记1:
已删0:
未删
intborbook[Maxbor];
//所订房间
public:
customer(){}
intgettag(){returntag;
}//获取删除标记
voiddelbook(){tag=1;
}//设置删除标记1:
intgetnum(){returnnum;
}//获取客户编号
voidaddcustomer(intn,char*na,char*I)//增加客户
{
tag=0;
num=n;
for(inti=0;
i<
Maxbor;
i++)
borbook[i]=0;
}
voidborrowbook(intbookid)//预订操作
{
if(borbook[i]==0)
{
borbook[i]=bookid;
return;
}
intretbook(intbookid)//退订操作
if(borbook[i]==bookid)
return1;
return0;
voiddisplay()//读出客户信息
cout<
<
"
客户编号:
<
num<
setw(15)<
"
姓名:
name<
身份证号:
ID<
客房编号:
["
;
if(borbook[i]!
=0)
cout<
#"
borbook[i]<
]"
endl;
//客户库类,实现建立客户的个人资料
classRDatabase
private:
inttop;
//客户记录指针
customerread[Maxr];
//客户记录
RDatabase()//构造函数,将customer.txt读到read[]中
customers;
top=-1;
fstreamfile("
customer.txt"
ios:
:
in);
//打开一个输入文件
while
(1)
{
file.read((char*)&
s,sizeof(s));
if(!
file)break;
top++;
read[top]=s;
file.close();
//关闭customer.txt
voidclear()//删除所有客户信息
intaddcustomer(intn,char*na,char*I)//添加客户时先查找是否存在
customer*p=query(n);
if(p==NULL)
top++;
read[top].addcustomer(n,na,I);
return1;
customer*query(intcustomerid)//按编号查找
for(inti=0;
=top;
if(read[i].getnum()==customerid&
&
read[i].gettag()==0)
return&
read[i];
returnNULL;
customer*query(stringname)//按name查找
if(read[i].getname()==name&
voiddisplay()//输出所有客户信息
for(inti=0;
if(read[i].gettag()==0)
read[i].display();
voidcustomerdata();
//客户库维护
~RDatabase()//析构函数,将read[]写到customer.txt文件中
out);
if(read[i].gettag()==0)
file.write((char*)&
read[i],sizeof(read[i]));
file.close();
voidRDatabase:
customerdata()
charchoice;
charrsex[10];
charrname[20];
intcustomerid;
charrID[18];
customer*r;
system("
cls"
);
while(choice!
='
0'
)
cout<
endl<
setw(40)<
客户信息"
cout<
setw(28)<
1"
新增"
2"
更改"
3"
删除"
4"
查找"
5"
显示"
6"
全删"
0"
返回"
cin>
>
choice;
system("
switch(choice)
case'
1'
请输入客户信息:
输入客户编号:
cin>
customerid;
输入客户姓名:
rname;
cout<
输入客户身份证号:
rID;
addcustomer(customerid,rname,rID);
break;
2'
r=query(customerid);
if(r==NULL)
{
cout<
该客户不存在"
}
输入新的客户姓名:
r->
setname(rname);
cout<
输入新的身份证号码:
cin>
rID;
setID(rID);
3'
cin>
r=query(customerid);
if(r==NULL)
{
该客户不存在"
endl;
break;
}
r->
delbook();
删除成功!
case'
4'
charcho;
请选择查找方式:
1.按客户编号查找,2.按客户姓名查找"
cin>
cho;
system("
switch(cho)
case'
cout<
cin>
r=query(customerid);
if(r==NULL)
{
cout<
break;
}
break;
case'
cout<
输入客户名字:
r=query(rname);
cout<
该客户不存在"
r->
display();
5'
display();
6'
clear();
default:
cout<
正在返回主界面..."
system("
break;
}
//客房类,实现对客房的描述
classBook
//删除标记1:
intno;
//客房编号
//客房描述
intonshelf;
//是否预订1:
空房2:
已预订
Book(){}
char*getname(){returnname;
}//获取姓名
intgetno(){returnno;
}//获取客房编号
intgettag(){returntag;
}//获取删除标记
voidsetname(charna[])//设置客房描述
voiddelbook(){tag=1;
}//删除客房
voidaddbook(intn,char*na)//增加客房
no=n;
onshelf=1;
intborrowbook()//预订操作
if(onshelf==1)
onshelf=0;
voidretbook()//退订操作
voiddisp()//输出客房
no<
客房描述:
(onshelf==1?
空房"
已预订"
)<
//客房库类,实现对客房的管理,如查找、删除等
classBDatabase
//客房记录指针
Bookbook[Maxb];
//客房记录
BDatabase()//构造函数,将book.txt读到book[]中
Bookb;
top=-1;
fstreamfile("
book.txt"
while
(1)
file.read((char*)&
b,sizeof(b));
if(!
file)break;
top++;
book[top]=b;
voidclear()//全删
intaddbook(intn,char*na)//增加客房
Book*p=query(n);
if(NULL==p)
book[top].addbook(n,na);
Book*query(intbookid)//查找客房
if(book[i].getno()==bookid&
book[i].gettag()==0)
{
book[i];
Book*query(stringbname)
if(book[i].getname()==bname&
voidbookdata();
//客房库维护
voiddisp()
if(book[i].gettag()==0)
book[i].disp();
~BDatabase()//析构函数,将book[]写到book.txt文件中
if(book[i].gettag()==0)
book[i],sizeof(book[i]));
voidBDatabase:
bookdata()
charbname[40];
intbookid;
Book*b;
客房信息"
cin>
choice;
请输入客房信息:
输入客房编号:
bookid;
输入客房描述:
bname;
addbook(bookid,bname);
b=query(bookid);
if(b==NULL)
该客房不存在"
输入新的客房描述:
b->
setname(bname);
b=query(bookid);
if(b==NULL)
该客房不存在"
b->
cout<
charbb;
请选择查找方式:
1.按客房编号查找2.按客房描述查找"
bb;
switch(bb)
case'
请输入客房编号:
bookid;
请输入客房描述:
bname;
b=query(bname);
disp();
disp();
intmain()
intbookid,customerid;
RDatabasecustomerDB;
BDatabaseBookDB;
while(choice!
setw(39)<
欢迎使用"
setw(55)<
酒店客房预订管理系统"
のののののののののののののののののののののののののののののののののののの"
I"
setw(71)<
setw(25)<
1"
setw(31)<
2"
3"
订房"
4"
退房"
0"
退出"
customerDB.customerdata();
BookDB.bookdata();
customerid;
r=customerDB.query(customerid);
//按编号查找
if(r=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 第五 酒店客房 预订 管理 系统 设计 实现 源代码
![提示](https://static.bdocx.com/images/bang_tan.gif)