航空客运订票系统实习报告

  • 格式:doc
  • 大小:529.50 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计

课程名称数据结构

题目名称____航空客运订票系统学生学院计算机学院

专业班级 07级软件工程(1)班学号**********

学生姓名伍健聪

指导教师温雪莲

2009 年 6 月20 日

题目:航空客运订票系统

一、需求分析

1.本演示程序中,航线信息以一个结构体数组line表示,包括终点站名、航班号、飞机号、飞行周日、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级)以及等候替补的客户名单(包括姓名、所需要票量)。

2.演示程序以用户和计算机的对话方式执行,即在计算机终端上显示“提示信息”之后,由用户在键盘上输入演示程序中的规定的运算命令;相应的输入数据和操作结果显示在其后。

3.程序执行的操作和功能包括:

(1)查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最后一天航班的日期和余票额;

(2)承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于定票额,则需要重新询问客户要求。若需要,可登记排队候补;

(3)承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。

4.测试数据

程序设定了三组航线数据,终点站分别shanghai、chongqin、changsha。另外程序提供了航线数据构建功能,可供航空公司工作人员添加或修改航线信息。

二、概要设计

为实现上述程序功能,应以结构体数组表示航线结点。

1.结构体数组的数据类型定义为:

struct 结构体名

成员表列

}变量名表列;

2.本程序包含三个模块:

1)主程序模块:

Void main(){

初始化;

进入用户菜单界面;

do{

接受命令;

处理命令;

}while (“命令”==“退出”);

2)功能单元模块――实现程序功能;

3)结点结构的单元模块――定义结构体数组的结点结构。各模块之间的调用关系如下:

三、详细设计

1.元素类型、结点类型

2.初始化模块

3.各功能模块

4.主程序

5.函数的调用关系图反映了演示程序的层次结构:

四、调试分析

1.用户界面设计比较清楚,用户使用简明易懂。

2.由于刚开始设计算法时对程序结点认识不足,在替补客户名单元素只采用了结构体数组类型,没有使用强大功能的队列数据类型,导致最后实现退票功能时,替补客

户候补功能出错,无法实现。

3.程序初始化时,构建了三组航线信息,节省了运行时构造航线的时间,同时演示也较为方便。

4.在初始化航线信息的同时,程序提供了航线随时构建和修改功能,方便工作人员的管理,也为系统航线的升级的实现提供了基础。

5.在航线构建功能模块中,设置了开启密码和界面提醒,用以区分用户和工作人员的使用,同时提供了航线信息保护的安全性。

6.算法的时空分析

1)数据初始化模块中,清零数据的时间复杂度为O(n^3)。

2)构建航线模块中,只需要输入和输出航线信息,只占用存储空间,时间复杂度为

O(1)。

3)查询航线模块中,需要一一比较各条航线中的终点站名,而且采用各字符一一比

较算法,所以时间复杂度为O(n^2),不占用存储空间。

4)订票模块中,时间主要花费在比较各航线中航班号码与所输入的航班号的比较中,

时间复杂度为O(n)。

5)退票模块中,比较航班号与输入数,同时移动航线中订票客户名单的顺序,时间

复杂度为O(n),不占用存储空间。

7.本实习作业采用数据封装在结构体中,调用方便。整个程序分成三个层次:元素结构体结点,功能模块,主控模块。实现时调试顺利,具有较强的可读性。但同时订

票候补客户的功能没有完全实现,缺陷明显,是比较严重的设计错误。

五、用户手册

1.本程序的编译软件为Microsoft Visual C++ 6.0,执行文件为fly.exe。

2.进入演示程序后即显示用户菜单界面如下:

3.选项4为工作人员构建航线所用,需要输入密码,其他选项为用户功能,各输入命令的结束符为“回车符”。

4.接受其他命令后即执行相应操作和显示相应结果。

六、测试结果

执行查询命令’1’:查询航线信息

执行订票命令’2’:订票

执行退票命令’3’:退票

执行命令’4’:建立航线信息

系统提醒为工作人员专用功能,需要提示密码。依次输入航线各信息元素。即构建航线信息成功。

执行命令’5’:退出

七、附录

源程序文件名:Fly.C //主程序