欢迎来到天天文库
浏览记录
ID:40882034
大小:493.00 KB
页数:29页
时间:2019-08-09
《孟永吉1071304115航空售票系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、目录1需求分析12概要设计23详细设计33.1头文件Ticket.h,:43.2头文件Ticket.cpp,:194调试与操作说明20总结25致谢26参考文献27281需求分析本次课程设计利用C++语言来编写,其运行平台为VisualC++。1.问题描述:航空客运订票业务活动包括:查询航线、客票预定和办理退票等。设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。2.基本要求:任务:通过此系统可以实现如下功能:(1)录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)(2)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城
2、市,航班票价,票价折扣,确定航班是否满仓);(3)可以输入起飞抵达城市,查询飞机航班情况;(4)订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;(5)退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。(6)修改航班信息:当航班信息改变可以修改航班数据文件。3.查询能实现的操作和功能如下:查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则
3、为客户办理订票手续,输出座位号;若已满员或余票少于订票额,则需重新询问客户要求。若需要,可登记排队候补;承办退票业务:根据客户的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队,首先询问排在第一的客户,若所退票数满足他的要求,则为他办理订票手续,否则一次询问其他排队候补的客户。281概要设计本次数据结构课程设计所制作的航空客运订票系统主要运用了链式存储结构来实现。我们知道线性表以及队列的存储结构主要用到了链式结构存储,因而此系统也应考虑使用这两种存储方式。在航班信息方面,要对航班进行添加、删除、查询等操作。由于链表的优势就在于便于进行添加、删除和查找,因此有
4、关航班信息方面的部分可以由链表来实现。但是为了更便于添加和删除,因此为链表设置了首、尾指针。而对于订票、退票来说,其中要讲一个先来后到的道理。基于这一点的要求,队列的存储方式再合适不过了,其“先进先出”的特点恰恰可以满足订票、退票的要求。在结构定义方面,本系统定义了四个结构,分别用来储存航班信息、乘客信息、替补乘客信息以及结点信息。而在航班信息定义中,分别将乘客信息、替补乘客信息引入其中,以供储存乘客信息和替补乘客信息。根据本系统中的功能以及所定义的数据结构,特编写如下函数:1.FlightInsert()//添加航班信息2.FlightSearch()//查询航班信息3.F
5、lightRework()//修改航班信息4.FlightBuyticket()//订票5.FlightCancelticket()//退票6.Buyticket(PFlightq,intTicket_Amount)//利用队列买票7.Buyreplace(PFlightq,intTicket_Amount,intn)//利用队列进行替补买票8.MainMenu()//主菜单9.Main()//主函数各个函数间的关系如下:28Main()FlightInsert()FlightSearch()FlightRework()FlightBuyticket()FlightCance
6、lticket()MainMenu()Buyticket()Buyreplace()图2.1函数关系图1详细设计本航空客运售票系统分为两个文件:一个是头文件Ticket.h,用来存放系统中数据结构的结构体,以及所要到的方法及函数。另一个是C++文件Ticket.cpp.,本文件主要是本系统的主函数,其中调用头文件,来实现系统的功能。具体实现如下:3.1头文件Ticket.h,:在前文中已介绍过,本文件是头文件,将售票系统的数据中的结构体定义在其中,并且利用所定义的结构来编写函数、方法来实现系统的功能。首先采用链式结构,定义出三个结构体:1.航线的结构体:typedefstru
7、ctFlight//航线信息28{charDes[10];//终点站名charFlightNum[10];//航班号charPlaneNum[10];//飞机号charWeek;//飞行周日intRation;//乘员定额intFreeTicket;//剩余票数floatPrice[3];//舱位等级的价格intReplacePas;//候补乘客数Replace*ReplName;//该航班的候补乘客名单Customer*CustName;//该航班的已定票乘客名单structFlight*next;/
此文档下载收益归作者所有