标题:SOS 旅馆预订系统
只看楼主
yuanling108
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-11-16
 问题点数:0 回复次数:4 
SOS 旅馆预订系统

旅馆预订系统 要求和实现

第一部分:需求概述
旅行社帮助其顾客预订旅馆,维护与其关联的旅馆和度假村的数据以及有关其预订情况的数据。

旅馆预订系统是为了方便预订和取消预订的记录而开发的,应当可以获得有关旅馆和度假村的更新信息。

第二部分:整体设计

旅馆的详细信息应存储在一个名为 Hotel.dat 的文件中,该文件应包含下列详细信息:

代码(从 1 开始按顺序编码);
名字(最多 30 个字符);
城市的名字(最多 30 个字符);
标准间的总数;
标准间的价格表;
可预订标准间的数目;
豪华间的总数;
豪华间的价格表;
可预订豪华间的数目;

度假村的详细信息应存储在一个名为 Resort.dat 的文件中,该文件应包含下列详细信息:

代码(从 1 开始按顺序编码);
名字(最多 30 个字符);
城市的名字(最多 30 个字符);
小别墅的总数;
小别墅的价格表;
可预订的小别墅数目;

预订的详细信息应保存在一个名为 Booking.dat 的文件中,该文件应包含下列详细信息:

预订编号(从 1 开始按顺序编码);
顾客的名字(最多 30 个字符);
联系电话;
电子邮件 ID (最多 30 个字符);
旅馆的类型(“H”代表旅馆,“R”代表度假村);
旅馆/度假村的代码;
房间类型(“R”代表标准间,“D”代表豪华间,“C”代表小别墅 – 如果旅馆类型是“R”则默认设为“C”);

第三部分:实现说明

旅馆预订系统则应以如图 1 所示的菜单开始


图 1:主菜单

根据用户的选择,将执行下列操作:

Add new Hotel details(添加新旅馆的详细信息)

通过访问 Hotel.dat 文件中最后一个旅馆的代码并将其加 1 来生成新旅馆代码,接受旅馆的详细信息,并确保旅馆名、城市名不为空,接受标准间和豪华间的总数及两类房间的价格表,每种类型的房间可用性不应接受,而应设置为总房间数,将记录保存到 Hotel.dat 文件中。

添加新旅馆的屏幕如下图(图 2 )所示:

图 2:添加新旅馆的详细信息

Add new Resort details(添加新度假村的详细信息)

通过访问 Resort.dat 文件中最后一个度假村的代码并将其加 1 来生成新度假村代码,接受度假村的详细信息,并确保度假村名和城市名不为空,接受小别墅的总数和价格表,小别墅的可用性不应接受,而应设置为小别墅总数,将记录保存到 Resort.dat 文件中。

添加新度假村的屏幕如下图(图 3 )所示:

图 3:添加新度假村的详细信息

Record Booking details(记录预订的详细信息)

询问用户预订的是旅馆还是度假村,如果预订的是旅馆,则接受有效的旅馆代码和所要求的房间类型,并检查其可用性,类似的,如果预订的是度假村,则接受有效的度假村代码并检查小别墅的可用性,如果房间或小别墅可用,则接受预订的详细信息,通过访问 Booking.dat 文件中最后一个预订编号并加 1 来生成新的预订编号,确保顾客名不为空,而且联系电话大于 0,将记录保存到 Booking.dat 文件中,更新 Hotel.dat 或 Resort.dat 文件,以反映当前房间或小别墅的可用性。

添加新预订如图 4 所示。

图 4:添加新预订的详细信息

Record Cancellation details(记录取消预订的详细信息)

接受有效的预订编号,从 Booking.dat 文件中删除指定的预订记录,检查要取消预订的旅馆类型,并相应地更新 Hotel.dat 或 Resort.dat 文件中房间/小别墅可用性详细信息。

取消预订的屏幕如下所示。

图 5:记录取消预订的详细信息

View details of Hotels and Resorts in a city(查看某一城市中旅馆及度假村的详细信息)

接受城市的名字,显示指定城市的相关旅馆和度假村。

特定城市中旅馆和度假村的屏幕如图 6 所示。

图 6:查看某一城市中的旅馆和度假村

Exit(退出)

关闭程序,并退出旅馆预订系统。

应在整个系统中应用面向对象编程的概念,在系统的所有功能点处显示相应的消息。

第四部分:对应的章节内容

第二章:高级函数特性

显示菜单并接受选项,根据输入的选项,调用函数来显示相应的消息,告知用户所选择的选项。

第五章:流

为旅馆、度假村和预订创建类别,接受并显示每个类别的数据。

第六章:文件操作和异常

根据菜单选项创建函数,调用函数来添加旅馆、添加度假村、记录预订、记录取消预订以及查看某一城市中的旅馆和度假村。

新旅馆将添加到 Hotel.dat 文件中,新度假村将添加到 Resort.dat 文件中,而预订的详细信息将存储到 Booking.dat 文件中。

使用文件输入/输出流 (fstream) 函数来执行下列操作:

open à打开文件;
close à关闭文件;
seekg à设置 get 指针的位置;
write à将字符序列写入文件;
- read à读数据块;

第九章:多态

将旅馆和度假村类的共同元素合并到基类中,适当地修改旅馆类和度假村类的数据项和函数来继承基类。

搜索更多相关主题的帖子: SOS 旅馆 系统 预订 
2005-11-16 22:45
chenxin2835
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-5-20
得分:0 

有点长,搞的星期六日都没心情去做

2006-05-20 12:49
myajax95
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:30
帖 子:2978
专家分:0
注 册:2006-3-5
得分:0 
楼主这帖子不是一两下就写的出的,可以考虑在VC区或程序供求区再贴一份。

http://myajax95./
2006-05-22 02:17
桂圆
Rank: 1
等 级:新手上路
威 望:1
帖 子:101
专家分:0
注 册:2006-5-15
得分:0 
我同学写过 旅店管理的 C++ 与SQL 连接的 代码 呵呵 其实 你写代码之前把数据需要都分析好了
写代码很好写的

偶写的是 考勤管理 哈哈

2006-05-22 20:08
coloar123
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2005-1-6
得分:0 
写成模块的模式就好了~

两耳不闻窗外事,专心只读圣贤书
2006-05-23 19:04



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-33804-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.051624 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved