旅馆订预系统 急!
我第一,二,三步都做好了 就是第四,五步没有什么头绪 。请各位大侠帮我解决以下!要求: void main()主函数中做一个菜单
标题:旅馆预订系统
1. 添加新旅馆详细信息(输入)
2. 添加新度假村详细信息(输入)
3. 记录预订的详细信息(输入订单信息)
4. 记录取消预订的详细信息(取消订单信息)
5. 查看某一个城市中旅馆及度假村的详细信息(查看,按城市查看)
6. 退出本系统
提示:设置一个整型变量,choice,接收用户输入的数字赋给choice,然后判断它的值,如果是1,则调用1号功能块
如果是2,则调用2号功能块……。
Switch(choice)
{
Case 1:…………….break;
Case 2:……………. break;
Case 3:……………. break;
……………………. break;
Case 6:…………….. break;
}
5. 功能1:要求添加旅馆信息——并写入文件hotel.dat
旅馆信息包括:
第一:代码(编号)——code——自动产生——方法:每一次从文件中读取记录,文件中有几个记录,序号就在原有的基础上加1,例:从文件中读取记录,共有3条记录,则序号自动为4
第二:名字(旅馆名字)——hotelname
第三:城市名字——cityname
第四:标准房数量——regularnum
第五:标准房费用——regulartariff
第六:豪华房数量——deluxenum
第七:豪华房费用——deluxetariff
注意:可预订的标准房间数(regularavailable)和可预订的豪华房间数(deluxeavailable),不能手工输入
初值=标准房总数
=豪华房总数
6. 功能2:要求添加渡假村信息——并写入文件resort.dat
渡假村信息包括:
第一:代码(编号)——code——自动产生——方法:每一次从文件中读取记录,文件中有几个记录,序号就在原有的基础上加1,例:从文件中读取记录,共有3条记录,则序号自动为4
第二:名字(度假村名字)——resortname
第三:城市名字——cityname
第四:别墅的数量——cottagesnum
第五:别墅的价格——cottagestariff
注意:可预订的别墅数量(cottagesavailable),不能手工输入
初值=别墅的总数
7. 功能5:查询旅馆信息和渡假村信息(按城市查询)
提示:
功能1:接收用户输入的旅馆信息,存入Hotel.dat文件中
写入时,要以ios::app以可追加的方式打开文件,不要使用ios::out
功能2:接收用户输入的渡假村信息,存入Resort.dat文件中
以ios::app可追加的方式打开
功能5:查询
实际上就是将旅馆信息和渡假村信息从二个文件中读取出来
8. 功能3:要求输入订单信息
第一:询问用户是订旅馆还是订渡假村(H订旅馆,R订度假村)
第二:输入要订的旅馆或者是渡假村的代码(编号)
第三:如果是订旅馆,则询问用户是订标准房还是豪华房(旅馆)
如果是订渡假村,则自动显示是订别墅(度假村)
第四:自动给出订单号(自动编号)
第五:输入姓名(预订人姓名)
第六:输入联系电话
第七:输入EMAIL地址
功能3:接收用户的订单,存入BOOKING.DAT文件中
以ios::app可追加的方式打开,并对HOTEL.DAT和RESORT.DAT文件作相应修改
例:用户FUYU,订购了1号旅馆的标准房一间,则相应的
HOTEL.DAT文件中1号旅馆的标准房的可用间数就应该减1。
结果:
9. 功能4:撤消订单
第一:要求输入需要撤消的订单号
涉及到文件的读写
首先,要打开BOOKING.DAT这个文件,以只读方式打开ios::in
第二,查找用户输入的这张订单,例:用户输入1号
要在booking文件中先查找到1号订单
如果找到了,则继续向下做,如果没有找到,则退出该模块。
第三,如果找到这张订单,则先要删除这张订单,方法:
跳过这张订单——seekg(行数,ios::beg),将所有的内容重新写回到booking文件中
第四,由于删除订单了,所以HOTEL.DAT文件和RESORT.DAT文件也要作相应的修改
例:用户要撤消1号订单,1号订单是订1号旅馆的标准房
则删除订单后,1号旅馆的标准房的可用间数要重新加1
10. 功能6:退出
退出程序时,使用Exit(0);
它在该头文件中,#include <stdlib.h>
另外:清屏:system(“cls”);