C++酒店管理程序代码.docx

上传人:b****8 文档编号:11033857 上传时间:2023-02-24 格式:DOCX 页数:15 大小:16.96KB
下载 相关 举报
C++酒店管理程序代码.docx_第1页
第1页 / 共15页
C++酒店管理程序代码.docx_第2页
第2页 / 共15页
C++酒店管理程序代码.docx_第3页
第3页 / 共15页
C++酒店管理程序代码.docx_第4页
第4页 / 共15页
C++酒店管理程序代码.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

C++酒店管理程序代码.docx

《C++酒店管理程序代码.docx》由会员分享,可在线阅读,更多相关《C++酒店管理程序代码.docx(15页珍藏版)》请在冰豆网上搜索。

C++酒店管理程序代码.docx

C++酒店管理程序代码

程序代码

N:

最终改进版代码(利用结构体储存多种类型的数据)

好处:

比数组能储存更多类型的数据!

#include

#include

#include准单人间2.大床房3.标准双人间4.套房)

stringphoneNum;准单人间100/天2.大床房200/天3.标准双人间300/天4.套房400/天"<>type;roomType=type;

cout<<"预留手机号:

"<>num;phoneNum=num;

};

voidBook()

{

cout<<"正在预定..."<

switch(this->roomType)

{

case1:

for(inti=0;i<20;i++)

{

if(room[i].State==0)ays=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

cout<<"预定成功!

房间号:

"<

room[i].State=1;break;umber<<"号房间已有人"<

}break;

case2:

for(inti=20;i<40;i++)

{

if(room[i].State==0)

{

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

cout<<"预定成功!

房间号:

"<

room[i].State=1;break;

}

elsecout<

}break;

case3:

for(inti=40;i<60;i++)

{

if(room[i].State==0)

{

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

cout<<"预定成功!

房间号:

"<

room[i].State=1;break;

}

elsecout<

}break;

case4:

for(inti=60;i<80;i++)

{

if(room[i].State==0)

{

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

cout<<"预定成功!

房间号:

"<

room[i].State=1;break;

}

elsecout<

}break;

default:

cout<<"您输入的房间类型有误!

"<

}

};

};

classCheckIn准单人间100/天2.大床房200/天3.标准双人间300/天4.套房400/天"<>type;roomType=type;

cout<<"客户手机号:

"<>num;phoneNum=num;

switch(this->roomType)

{

case1:

for(inti=0;i<20;i++)

{

if(room[i].State==0){

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

room[i].ID=this->idNum;

cout<<"入住成功!

房间号:

"<

cout<<"请支付200元押金"<

room[i].State=1;

break;

}

elsecout<<"抱歉,该房间类型没有了"<

}break;

case2:

for(inti=20;i<40;i++)

{

if(room[i].State==0){

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

room[i].ID=this->idNum;

cout<<"入住成功!

房间号:

"<

cout<<"请支付400元押金"<

room[i].State=1;

break;

}

elsecout<<"抱歉,该房间类型没有了"<

}break;

case3:

for(inti=40;i<60;i++)

{

if(room[i].State==0){

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

room[i].ID=this->idNum;

cout<<"入住成功!

房间号:

"<

cout<<"请支付600元押金"<

room[i].State=1;

break;

}

elsecout<<"抱歉,该房间类型没有了"<

}break;

case4:

for(inti=60;i<80;i++)

{

if(room[i].State==0){

room[i].days=this->stayTime;

room[i].Name=this->cName;

room[i].Phone=this->phoneNum;

room[i].Price*=this->stayTime;

room[i].ID=this->idNum;

cout<<"入住成功!

房间号:

"<

cout<<"请支付800元押金"<

room[i].State=1;

break;

}

elsecout<<"抱歉,该房间类型没有了"<

}break;

default:

cout<<"您输入的房间类型有误!

"<

}

}

voidbooked()

{

stringcompareItem;

stringid_num;

cout<<"请输入您的姓名或者手机号:

"<>compareItem;

for(inti=0;i<80;i++)

{

if(room[i].Name==compareItem||room[i].Phone==compareItem)

{

cout<<"验证成功!

请支付:

"<<(room[i].Price*2)<<"元押金"<

cout<<"请登记客户的身份证号:

"<>id_num;idNum=id_num;room[i].ID=idNum;

cout<<"房间号为:

"<

"<

break;

}

}

}

};

classcheckOut{

private:

stringname;

intnumber;

intdays;

intprice;

public:

voidcheckout(){

intexpense;

cout<<"请输入房间号:

"<>number;

cout<<"请输入姓名:

"<>name;

cout<<"请输入实际住宿天数:

"<>days;

for(inti=0;i<80;i++){

if((room[i].Name==name)&&(room[i].Number==number)){

expense=days*(room[i].Number/100*100);

cout<<"房间号为"<

cout<<"押金为:

"<

if(expense>room[i].Price)cout<<"请补交"<<(expense-room[i].Price)<<"元"<

elsecout<<"退回:

"<<(room[i].Price-expense)<<"元"<

}

elsecout<

}

cout<<"房费核算清后请安任意键继续"<

system("pause");

cout<<"感谢入住本酒店,欢迎下次光临!

"<

}

};

voidmenu()

{

cout<<"欢迎使用酒店管理系统!

"<

cout<<"请选择:

"<

cout<<"1.预定房间"<

cout<<"2.办理入住"<

cout<<"3.退房结账"<

cout<<"4.退出系统"<

}

voidinit()

{

intn=101;

for(inti=0;i<20;i++)

{

room[i].Number=n++;

room[i].Price=100;

room[i].State=0;

}

n=201;

for(inti=20;i<40;i++)

{

room[i].Number=n++;

room[i].Price=200;

room[i].State=0;

}

n=301;

for(inti=40;i<60;i++)

{

room[i].Number=n++;

room[i].Price=300;

room[i].State=0;

}

n=401;

for(inti=60;i<80;i++)

{

room[i].Number=n++;

room[i].Price=400;

room[i].State=0;

}

}

intmain(void)

{

init();

intflag=1;

while(flag)

{

menu();

intc;

cin>>c;

switch(c)

{

case1:

{

BookRoom*a=newBookRoom;

a->setData();

a->Book();

break;

}

case2:

{

CheckIn*b=newCheckIn;

cout<<"您有预定吗?

1.已预定2.未预定"<

intc;

cin>>c;

switch(c)

{

case1:

{

b->booked();

break;

}

case2:

{

b->unbooked();

break;

}

default:

cout<<"输入有误!

"<

}

break;

}

case3:

{

checkOut*c=newcheckOut;

c->checkout();

break;

}

case4:

{

cout<<"谢谢使用,再见!

"<

flag=0;

break;

}

default:

cout<<"输入有误!

"<

}

}

return0;

}

O:

最初废除版(利用数组)

因为数组只能简单的储存一种类型的数据,例如字符和数字。

而酒店管理系统这种情境,一个房间要储存多种数据,例如客户姓名、客户性别、预订房间号、客户预留手机号、客户占用天数、客户身份证号以及押金和实际花销等。

因此我选用了结构体来储存。

以下是Oldversion:

#include

#include

usingnamespacestd;

introom_num[4][20];准单人间2.大床房3.标准双人间4.套房)

stringphoneNum;准单人间2.大床房3.标准双人间4.套房"<>type;roomType=type;

cout<<"预留手机号:

"<>num;phoneNum=num;

};

voidBook()

{

cout<<"正在预定..."<

switch(this->roomType){

case1:

for(inti=0;i<20;i++)

{

if(room_num[1][i]==0)."<

switch(Room_num/100)

{

case1:

cout<<"办理成功!

共计消费:

"<<100*stayTime<

break;

case2:

cout<<"办理成功!

共计消费:

"<<200*stayTime<

break;

case3:

cout<<"办理成功!

共计消费:

"<<300*stayTime<

break;

case4:

cout<<"办理成功!

共计消费:

"<<400*stayTime<

break;

default:

cout<<"输入错误!

"<

}

};

};

voidmenu()

{

cout<<"欢迎使用酒店管理系统!

"<

cout<<"请选择:

"<

cout<<"1.预定房间"<

cout<<"2.办理入住"<

cout<<"3.退房结账"<

cout<<"4.退出系统"<

}

intmain(void)

{

for(inti=0;i<4;i++)

{

for(intj=0;j<20;j++)

{

room_num[i][j]=0;

}

}

intflag=1;

while(flag)

{

menu();

intc;

cin>>c;

switch(c)

{

case1:

{

BookRoom*a=newBookRoom;

a->setData();

a->Book();

break;

}

case2:

{

Checkin*b=newCheckin;

b->setData();

b->Check();

break;

}

//case3todo

case4:

{

cout<<"谢谢使用,再见!

"<

flag=0;

break;

}

default:

cout<<"输入有误!

"<

}

}

return0;

}

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

当前位置:首页 > 表格模板 > 合同协议

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

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