数据结构课程设计方案航空订票系统

上传人:人*** 文档编号:489038242 上传时间:2022-12-25 格式:DOCX 页数:25 大小:421.08KB
返回 下载 相关 举报
数据结构课程设计方案航空订票系统_第1页
第1页 / 共25页
数据结构课程设计方案航空订票系统_第2页
第2页 / 共25页
数据结构课程设计方案航空订票系统_第3页
第3页 / 共25页
数据结构课程设计方案航空订票系统_第4页
第4页 / 共25页
数据结构课程设计方案航空订票系统_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《数据结构课程设计方案航空订票系统》由会员分享,可在线阅读,更多相关《数据结构课程设计方案航空订票系统(25页珍藏版)》请在金锄头文库上搜索。

1、个人收集整理仅供参考学习数据结构课程设计报告设计题目:航空客运订票系统院系计算机学院年级 xxxxx学生 xxx学号 xxxxxxxxxxx指导教师xxxxxxxxxxx起止时间9-6/9-132013 年 9 月 10 日星期二目录1/23个人收集整理仅供参考学习一、课程设计目地3二、需求分析 3三、概要设计1设计步骤42系统整体结构图53功能模块及调用关系说明5四、 详细设计和源代码1.实现概要设计中定义数据地存储结构62.查询航线信息功能地算法设计73.4.订票功能地算法设计9退票功能地算法设计125. 录入功能地算法设计146. 总航线预览功能地程序源代码 15五、调试分析1. 各功能

2、地具体实例分析 162. 实验过程中出现地问题及解决方法 20六、课程设计总结20七、参考资料21一、 课程设计目地(1) 熟练使用 C 语言编写程序 , 解决实际问题 ;2/23个人收集整理仅供参考学习(2) 了解并掌握数据结构与算法地设计方法 , 具备初步地独立分析和设计能力 ;(3) 初步掌握软件开发过程地问题分析、系统设计、程序编码、测试等基本方法和技能;(4) 提高综合运用所学地理论知识和方法独立分析和解决问题地能力 ; 航空订票系统:(1)熟练掌握链表存储结构及其建立过程和常用操作;(2)熟练掌握队列地建立过程和常用操作;(3) 学会自己调试程序地方法并掌握一定地技巧.二、 需求分

3、析问题描述: 航空客运订票地业务活动包括:查询航线、客票预订和办理退票等.试设计一个航空客运订票系统 ,以使上述业务可以借助计算机来完成.b5E2RGbCAP设计任务: 通过此系统可以实现如下功能:录入: 可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线地情况 (如 ,输入航班号 ,查询起降时间 ,起飞抵达城市 ,航班票价 , 票价折扣 ,确定航班是否满仓);可以输入起飞抵达城市 ,查询飞机航班情况;根据旅客提出地终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班地日期和余票额;p1EanqFDPw订票:(订票情况可以存在一个数据文件中

4、,结构自己设定) 根据客户提出地要求 (日期、航班号、订票数额)查询该航班票额情况 ,若尚有余额 ,则为客户办理订票手续 ,输出座位号;若已满员或余票额少于订票额 ,则需要重新询问客户要求 .若需要 ,可预约登记排队等候 .如果该航班已经无票 ,可以提供相关可选择航班; DXDiTa9E3d退票: 根据客户提供地情况(日期、航班、退票数额),为客户办理退票手续 ,然后查询该航班是否有人预约登记,首先询问排在第一地客户,若所退票额能满足他地要求,则为他办理订票手续 ,否则依次询问其他排队预约地客户 退票成功后修改相关数据文件 .RTCrpUDGiT 客户资料有姓名 ,证件号 ,订票数量及航班情况

5、 ,订单要有编号 .修改航班信息: 当航班信息改变可以修改航班数据文件要求: 根据以上功能说明 ,设计航班信息 ,订票信息地存储结构 ,设计程序完成功能 .测试数据:由学生任意指定,但报告上要求写出多批数据测试结果.实现提示: 每条航线应包含地信息有:终点站名、航班号、飞机号、飞行日期(星期几)、乘员定额、余票额、已订票地客户名单(包括姓名、订票额、座位号)和预约登记地客户名单(包括日期、姓名、所需票额).这最后两项显然是一个线性表和一个队列.为查找方便、已订票客户地线性表应按客户姓名有序,并且 ,为插入和删除方便 ,应以链表作存储结构 .由于预约人数无法预料,队列也应以链表作存储结构.整个系

6、统需汇总各条航线地情况登录在一张线性表上 ,由于航线基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序.每3/23个人收集整理仅供参考学习条航线是这张表上地一个记录,包含上述八个域 ,其中乘员名单域为指向乘员名单链表地头指针,预约登记客户名单域为分别指向队头和队尾地指针.5PCzVD7HxA选做内容:当客户订票要求不能满足时,系统可向客户提供到达同一目地地地其它航线情况.三、概要设计1设计步骤1)分析问题 ,给出数学模型 ,设计相应地数据结构 .提示:(1)己订票地客户名单可以用线性表来实现 .为查找方便 ,线性表应按照客户姓名有序 , 并且为了插入和删除地方便 ,应以链表作为存储结构

7、 .(2) 等候替补地客户名单可以用队列来实现 .由于预约人数无法预计 ,所以队列也应以链表作为存储结构 .(3)需将输入地航班情况登录到一张线性表上 (用顺序存储结构或链表存储结构 ).为了查询地方便 ,可以将航班情况按照航班有序或按照终点站名有序建立线性表 .每条航线是这张线性表地一个记录 ,包含上述 8个域 ,其中已订票地客户名单域是指向己订票地客户名单链表地头指针,等候替补地客户名单域是指向队头和队尾地指针.jLBHrnAILg2)算法设计在已经选择好数据结构地前提下,为解决问题设计算法 .( 1)确定所需模块对于稍复杂地程序设计 ,要充分利用模块化程序设计方法 ,自顶向下 ,逐步细化

8、 ,在整体思路确定地情况下 ,考虑所需模块数 ,各模块完成功能以及模块之间地数据联系和调用关系 .xHAQX74J0X( 2)各子模块功能描述给出主要模块地算法描述,用流程图或伪代码表示 .( 3)模块之间地调用关系3)源程序清单为了提高工作效率 ,充分利用上机调试程序地时间,要求学生在上机之前给出源程序清单.4)用测试数据去验证算法及程序地正确性5)算法分析经过上机调试 ,源程序运行正确 ,并且实现算法要求地功能,解决课程设计题目中给出地问题后,分析算法地时间复杂度和空间复杂度. LDAYtRyKfE2系统整体结构图(功能模块图)4/23个人收集整理仅供参考学习主菜单menu()1.总 航

9、线 信2.查询单条3办.理订票4.办 理 退 票5录.入航班0退.出系统息预览航线信息业务业务信息display()Search()Book()tuipiao()CreatPlaneZzz6ZB2Ltk图 1. 系统整体结构图3功能模块及调用关系说明(1)总航线信息预览:通过调用display()预览已经建立地全部航线地相关信息(航班号、飞机号 、终点站、飞行日期、 定额 、余票数、排队等候人数) ,预览完返回主菜单 .dvzfvkwMI1(2)查询单条航线信息:根据乘客提出地终点站名或航班号调用 Search() 函数来查询并输出此条航线地相关信息(航班号、飞机号 、终点站 、飞行日期 、

10、定额 、余票数 、已订票乘客名单、排队等候乘客名单) . 并且查询完后询问乘客是否订票 ,是就调用订票 Book() 函数来为乘客进行订票 ,否就返回主菜单 .rqyn14ZNXI( 3)办理订票业务:客户先输入地终点站名、订票数、姓名信息再来调用订票Book() 函数,Book() 函数根据客户提供地终点站名查询到该航线信息 ,若客户订票额末超过余票量 ,订票成功并登记信息 ,在订票乘员名单链表中添加乘客地信息; 如果暂时余票数不足是 ,询问客户是否要排队等侯 ,如果是 ,则在排队等候地队列中增加该乘客地订票信息.EmxvxOtOco(4)办理退票业务:调用 tuipiao() 查询函数 ,

11、根据客户提供地航线进行搜索根据客户提供地姓名到订票客户名单域进行查询 .退票成功后 ,重新将航线名单域指向订票单链表地头指针 .根据队列中从出地客户信息判断是否满足要求,如果满足 ,则将该客户地信息插入到乘客信息链表中.SixE2yXPq5(5)录入航班信息:调用CreatPlane () 函数 ,根据输入地航班地相关地信息(航班号、飞机号 、终点站、飞行日期、 定额 、余票数) ,将此航班加入到原来地航班组中.6ewMyirQFL(6)退出系统四、详细设计和源代码5/23个人收集整理仅供参考学习1.实现概要设计中定义数据地存储结构(1)已订票乘客信息(单链表)typedef struct C

12、ust/已订票乘客信息char Name15;/乘客姓名char number10;/乘客所乘飞机航班号char end15;/乘客终点站(2)排队等候地乘客信息typedef struct waitNode /排队等候客户信息char name15;/乘客姓名intticket;/乘客地订票数struct waitNode *next;waitNode,*waitlink;typedef structwaitlink front;waitlink rear;waitQueue;(3)航班信息typedef struct Plane /航班信息char number10;/航班号int planenum;/飞机号char end15;/终点站char date10;/飞行日期intdinge;/成员定额int tick;/剩余票数int k;/排队等候地人数Customer *first; /链接已订票客户waitQueue Q;/链接候补客户PlaneLink;2.查询单条航线信息功能地算法设计(Search( )函数功能实现地源代码)6/23个人收集整理仅供参考学习int Search(PlaneLink *p,int N)int i=0,Q;cout=n;kavU42VRUscout

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号