1、 飞机订票系统飞机订票系统 一、一、需求分析需求分析 无论是做任何开发或者设计, 我想, 这都是一个必不可少的至关重要的阶段, 飞机订票系统也不例外。 首先, 作为一个系统的管理者, 需要高效细致地管理 航 班的相关资料,就必须得依据航班的实际情况对顾客的各个“板块”分门别类地 建立适当的文件其次, 一个顾客的流动要求本管理系统必须具备处理这些数据出 入的能力。而我们更希望通过这样一个系统对顾客的某些信息一目了然,以便于 相关人员能及时地做一些航班上的调整。使用范围方面,管理系统顾名思义就是 飞机的一般的管理阶层了。界面上为了尽量设计得人性化一些,采用了多分枝的 SWITCH CASE 语句,
2、并有询问用户继续操作或是退出的选择处理。对于输出, 要求格式清晰,让人一目了然。如若出现无符合查询条件的员工信息,则系统会 给出相应提示。 本次系统开发主要的开发环境是 VC,但因为它可以在编辑的时候一边给予 提示,避免了不少语法上的错误。而此次开发所用的编程语言-C 语言是得到 广泛应用的程序设计语言之一,不同于 C+面向对象的设计理念,它属于结构化 程序设计语言,由于既具备高级语言的特性,又具有直接操纵计算机硬件的能力 因而更适合于底层的技术开发。 本次要求编制程序,实现航班信息,顾客信息的存储结构,完成信息的录入、顾 客退票、顾客订票、查询航班信息四个功能。 1录入: 可以录入航班情况:
3、 航班号,起飞时间,抵达时间,始发地,目的地,票价,折扣情况,座位总数, 剩余座位数。 2退票:可退票,退票后修改相关数据文件 客户资料有姓名,证件号,订购机票数量,航班号 3订票:(订票情况可以存在一个数据文件中) 可以订票,若已无票,可以重新选择再进行 4查询:(航班信息改变则航班数据改变) 可以查询某个航线的情况: 如可以通过航班号查询有关航班的信息 (航班号, 起飞时间, 抵达时间, 始发地, 目的地,票价,折扣情况,座位总数,剩余座位数) 二、概要设计概要设计 数据结构是计算机存储、组织数据的方式,是指相互之间存在一种或多种特定关 系的数据元素的集合。通常情况下,精心选择的数据结构可
4、以带来更高的运行或 者存储效率。数据结构往往同高效的检索算法和索引技术有关。 关于数据结构在计算机学界至今还没有标准的定义: Sartaj Sahni 在他的数据结构、算法与应用一书中称: “数据结构是数据 对象,以及存在于该对象的实例和组成实例的元素之间的各种联系。这些联系可 以通过定义相关的函数来给出。 ”他将数据对象定义为“一个数据对象是实例或 值的集合” 。 Clifford A.Shaffer 在数据结构与算法分析一书中的定义是: “数据结构是 ADT(抽象数据类型 Abstract Data Type)的物理实现。 ” Lobert L.Kruse 在数据结构与程序设计一书中,将一
5、个数据结构的设计 过程分成抽象层、数据结构层和实现层。其中,抽象层是指抽象数据类型层,它 讨论数据的逻辑结构及其运算, 数据结构层和实现层讨论一个数据结构的表示和 在计算机内的存储细节以及运算的实现。 而本人的理解,数据结构通俗来讲就是将数据元素依据某种逻辑联系组织起 来通过特定的算法将理论运用到生活中解决一些现实问题应用。 在这次课程设计 中,正是基于这样一种理念,在经过需求分析将实际情况综合起来之后设计并开 发出了这样一个飞机订票系统。 本系统的主要功能是通过接收顾客的输入建立航班信息、顾客信息、订票情 况、退票信息等内容,在实际的生产生活中确保数据的可靠性和安全性。 本系统涉及到三个文件
6、,所以为了保持数据的一致性,所用操作都必须在三 个文件上同时进行。下面对本管理系统的各模块及其功能作详细介绍。 本系统的主要流程图如下 三、三、详细设计详细设计 本系统作为一个关于飞机订票的管理系统,首先在界面上就要人性化一点。 为了能提供多选择的操作,主函数内部选用了多分枝的 switch case 语句,用户 一进入到该界面系统就会自动提示请选择相应的操作, 当用户选定后便可使用由 系统提供的各种功能函数。而 switch 语句的外层是一个 do-while 循环,当用户 按照提示输入时可以不断地操作,输入非法时则不予执行。 进入该系统,首先映入用户眼帘的是下面一个界面。从下图我们可以看到, 该界面是一个人性化的界面,当用户登陆后可以自主选择需要进行的各项操作, 各项操作表面上是相互独立的,但实际上数据之间又相互关联。 下面是各部分的具体功能: 开始 输 入 记 录 显 示 记 录 修 改 记 录 显 示 记 录 查 找 记 录 订 票 记 录 退 票 记 录 退 出 系 统 输入要执行的功能序号 判断用户输入 功能号 判断输入 更 新 航 班 返