资源简介
1.添加酒店资料
2.删除酒店资料
3.增加订单
4.取消订单
5.查找城市酒店
6.浏览所有酒店
7.浏览所有订单
8.退出酒店系统
酒店资料: 酒店编号(自动生成),酒店名称,所在城市,总房数,普通房数,普通空房数,普通房价,
高级房数,高级空房数,高级房价
订单:订单编号(自动生成),酒店编号,房间类型,订房数目,订者姓名,联系电话,email地址
要求:
1、增加订单时订房数目必须小于此类型酒店的空房数,有了订单后,酒店的空房数应相应减少,取消订单后相应增加。(由于没有对订单的日期做比较,所有订单长期有效,和实际情况有所出入)
2、查询资料时,输出的资料应格式化对齐。台头有中文说明。
3、使用类来定义酒店资料和订单资料,并且对<>(输入)运算符进行重载,以格式化输出。
4、菜单选择错误时,有退出机制,不需要完成菜单项的内容也可以退出。
5、所有资料保存在文件中。
6、使用STL类库来添加和删除资料。
7、代码中有足够的注释,可以让开发者以外的人很快看明白。
8、使用头文件和源代码分开的形式。(2个文件,1个.h,一个.cpp)
9、对输入有校验,如输入的类型不对,应该有提示重新输入。
代码片段和文件信息
#include
#include
#include
#include
#include
#include “HotelInfo.h“
#include “HotelOrder.h“
using namespace std;
int Add_Hotel()
{
list hotel_list;
HotelInfo hotel;
if(hotel.InputInfo()==-1)
return -1;
hotel_list.push_back(hotel);
SaveFile(hotel_listtrue);
return 0;
}
void Del_Hotel()
{
list del_list;
HotelInfo del;
LoadFile(del_list);
int flag=0rid;
string id;
cout<<“请输入要删除的酒店编号:“;
cin>>id;
while(1)
{
if (checknum(id)||Inputcheck(id))
{
break;
}
else
{
cout<<“您的输入不正确,请重新输入!!!“< cout<<“请输入对应数字:“;
cin>>id;
}
}
rid=atoi(id.c_str());
list::iterator it=del_list.begin();
while (it!=del_list.end())
{
if (it->m_HId==rid)
{
flag=1;
del_list.erase(it);
SaveFile(del_listfalse);
return;
}
it++;
}
if (flag==0)
{
cout<<“您要删除的酒店编号不存在!!!“< }
}
int Add_Order()
{
list AddO;
HotelOrder AO;
if(AO.Inputinfo()==-1)
return -1;
AddO.push_back(AO);
SaveFile_O(AddOtrue);
return 0;
}
void Cancel_Order()
{
int tmp_hid;
list can_o;
list h_list;
LoadFile(h_list);
HotelInfo can;
LoadFile_O(can_o);
int flag=0flag1=0;
string id;
cout<<“请输入要删除的订单编号:“;
cin>>id;
while(1)
{
if (CheckReOid(id)||Inputcheck(id))
{
break;
}
else
{
cout<<“您的输入的订单编号不存在!!!“< cout<<“请输入对应数字:“;
cin>>id;
}
}
list::iterator it1=h_list.begin();
list::iterator it=can_o.begin();
while (it!=can_o.end())
{
if (it->m_OId==id)
{
tmp_hid=it->m_HId;
while (it1!=h_list.end())
{
if (it1->m_HId==tmp_hid)
{
flag1=1;
break;
}
it1++;
}
if (flag1==0)
{
string x;
cout<<“您要删除的订单对应的酒店已经不存在了!!!“< cout<<“您是否要继续删除订单,(Y/N):“;
cin>>x;
if (x==“y“||x==“Y“)
{
can_o.erase(it);
SaveFile_O(can_ofalse);
return;
}
else
{
break;
}
}
if(flag1==1)
{
flag=1;
UpdataInfo_order(h_listit->m_ORoomTypeit->m_HIdit->m_ONum);
SaveFile(h_listfalse);
can_o.erase(it);
SaveFile_O(can_ofalse);
break;
}
}
it++;
}
if(flag==1)
{
cout<<“删除订单成功!!!“< }
}
void Search_City()
{
list H_Search;
HotelInfo search;
LoadFile(H_Search);
string city;
int kflag=0;
k=CountLines(“test.txt“);
if(k>0)
{
list::iterator it=H_Search.begin();
cout<<“根据城市查找酒店:“;
cin>>city;
cout<<“酒店编号“< <<“普通空房数“< while(it!=H_Search.end())
{
if (it->m_Hcity==city)
{
flag=1;
cout<m_HId<m_Hname<m_Hcity<
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-08-24 09:41 Hotel\
目录 0 2011-08-24 09:41 Hotel\Debug\
文件 2794496 2011-08-23 16:54 Hotel\Debug\Hotel.bsc
文件 696403 2011-08-23 16:54 Hotel\Debug\Hotel.exe
文件 1298164 2011-08-23 16:54 Hotel\Debug\Hotel.ilk
文件 284299 2011-08-23 15:07 Hotel\Debug\Hotel.obj
文件 2616480 2011-08-23 15:34 Hotel\Debug\Hotel.pch
文件 1532928 2011-08-23 16:45 Hotel\Debug\Hotel.pdb
文件 0 2011-08-23 15:07 Hotel\Debug\Hotel.sbr
文件 460427 2011-08-23 16:22 Hotel\Debug\HotelInfo.obj
文件 0 2011-08-23 16:22 Hotel\Debug\HotelInfo.sbr
文件 460017 2011-08-23 16:54 Hotel\Debug\HotelOrder.obj
文件 0 2011-08-23 16:54 Hotel\Debug\HotelOrder.sbr
文件 238592 2011-08-23 16:54 Hotel\Debug\vc60.idb
文件 176128 2011-08-23 16:45 Hotel\Debug\vc60.pdb
文件 5918 2011-08-23 14:50 Hotel\Hotel.cpp
文件 4532 2011-08-20 16:41 Hotel\Hotel.dsp
文件 518 2011-08-20 10:13 Hotel\Hotel.dsw
文件 74752 2011-08-23 16:54 Hotel\Hotel.ncb
文件 55808 2011-08-23 16:54 Hotel\Hotel.opt
文件 433 2011-08-23 16:54 Hotel\Hotel.plg
文件 8093 2011-08-23 15:34 Hotel\HotelInfo.cpp
文件 1721 2011-08-23 15:06 Hotel\HotelInfo.h
文件 6779 2011-08-23 16:54 Hotel\HotelOrder.cpp
文件 997 2011-08-22 23:12 Hotel\HotelOrder.h
文件 51 2011-08-23 16:47 Hotel\order.txt
文件 47 2011-08-23 16:47 Hotel\test.txt
文件 323 2011-08-24 10:17 Hotel\复件 test.txt
- 上一篇:c++prime课后习题答案PDF版
- 下一篇:计算机考研复试问题汇总带答案
相关资源
- c++prime课后习题答案PDF版
- 基于OpenCV的步态能量图源代码GEI Gai
- 非线性滤波
- c++链接数据库用二进制存储图像,并
- VC++6.0小游戏--扫雷源代码
- SNAP7 协议说明书
- 基于C++的网络入侵检测系统源码
- C++考勤管理系统源代码
- CGAL编程指南c++版
- C++操作Access数据库
- 飞机飞行源代码VC6.0
- 印刷体文字识别VC++源程序及论文
- 数据库课程设计(教室管理信息系统
- RC4 C++实现
- VS2019c++装换为动态链接库DLL.doc
- C++程序编写的MFC控件的打地鼠游戏
- VC++ MFC制作数字时钟、图形时钟、秒表
- C++经典教材
- 魂斗罗游戏源码
- 基于vc++6.0的rs232串口通信课程设计
- 超市管理系统c++2
- 舒尔特方格MFC源码
- Qt5 C++ GUI Programming Cookbook pdf 0分
- 《无线通信系统仿真-c++使用模型》源
- VC++ MFC 游戏手柄Joystick 编程
- 基于员工培训管理系统
- C++Templates 侯捷 带书签 pdf
- c++ mfc客户端服务器端文件传输
- C++电梯协调运行自动模拟
- 《C++ GUI Qt 4编程》第二版源代码
评论
共有 条评论