- 1、本文档共55页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
数据结构课程设计
设计题目:航空客运订票系统
课程名称数据结构学院计算机专业班级学号姓名联系方式指导教师
20年月日
航空客运订票系统
航空客运订票系统
【需求分析】
随着社会的发展,科技不断地创新,航空业也不断地发展。随着航空客运业务与乘客量不断地增多,航空客运业务的办理也越来越繁重。航空客运订票业务活动包括查询航线、客票预定和办理退票等。为了使业务办理能够自动化,减轻工作人员劳动强度,提高工作效率,需设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。
【设计概要】
航空客运订票系统采用单链表的数据结构形式存储各项信息。用一个带头结点的单链表存储航线,每一个单链表的结点(头结点除外)存储每一条航线的信息(如:起点站名、终点站名、航班号、飞机号、飞行周日、乘客定额、剩余票数、该航班已订票和等待替补乘客等信息)。而每个航班已订票的乘客和等待替补的乘客是用一条不带头结点的单链表存储该航班的每一位乘客的信息,每个结点分别存储每一位乘客的名字、所订的航班号和所订的票数。同时建立外存文件(Flight、Customer和Replace)分别用来保存航线、订票乘客和候补乘客的信息,每次程序启动时则把文件里存储的信息读到内存里,而每次程序结束时则可以把内存的所有信息保存到外存的三个文件里,这样可以使所有信息都可以实现记忆的功能。存储结构图如下所示:
※存储结构示意图
-1-
航空客运订票系统
航空客运订票系统的主要功能有:查询系统(主要包括航班、客户的查询)、订票办理、退票办理、乘客管理(主要是实现对乘客的删除功能)、航线管理(包括航线的添加与删除)和保存航线、乘客的所有信息。操作及功能如下图所示:
按航班号查询
航班航线查询按航线查询
按飞行周日查询
订票乘客查询查询系统
候补乘客查询
订票办理
统航退票办理空删除单个航班的所有订票乘客客
运
订乘客管理删除单个航班的所有候补乘客票
系
删除某航班的单个订票乘客
添加航线
航线管理
删除航线
保存退出
※操作及功能示意图【详细设计】
一、数据定义:
1、订票乘客结点的定义:数据域有charName[10]和intAmount分别用来存储订票
乘客的名字和订票数;指针域*Next指向下一个订票乘客结点。
2、替补乘客结点的定义:数据域有charName[10]和intAmount分别有来存储替补
乘客的名字和所需的票数;指针域*Next指向下一个候补乘客结点。
3、航班结点的定义:数据域有charFlight_NO[10]用来存储航班号(注:航班号是
-2-
航空客运订票系统
主关键字,即唯一的)、charLocalName[10]用来存储起点站名、charDes_Name[10]
用来存储终点站名、charPlane_NO[10]用来存储飞机号、intWeek_Day用来存储
该航班的飞行周日、intCustomer_Amount用来存储乘客定额(即该航班最大的载
客量)和intFree_Amount用来存储该航班的余票数量;指针域有*CustName和
*ReplName分别指向该航班订票乘客的名单和该航班等候替补的名单。
4、外部存储文件的定义:Flight文件存储航班的起点站名、终点站名、航班号、飞
机号、飞行周日、乘客定额和余票数量;Customer文件存储订票乘客所订的航班
号、姓名和订票的数量;Replace文件存储候补乘客所订的飞机号、姓名和所需的
票数。
二、操作及功能设计:(详细设计,请参阅附表二:源代码)
1、查询系统:航班查询(按航班号、按终点站和按飞行周日查询)、乘客查询(订票
乘客和候补乘客查询)。
2、订票办理
3、退票办理
4、乘客管理:删除某航班的全部订票乘客、删除某航班的全部或个别候补乘客。
5、航线管理:添加和删除航线
6、保存退出:将航线信息、订票乘客信息和候补乘客信息保存到Flight、Customer
和Replace文件里。
【设计总结】
航空客运订票系统采用分层分模块的程序设计方法。本系统分三层编写程序代码:第一层程序代码主要是用来作底层操作(即对存储链表的操作),所以每一个函数(方法)都是实现一个功能。第二层是服务层的程序代码编写,主要对用户输入数据的合法性的检测,当用户输入数据合法时,向第一层发出请求,作用户数据与系统数据传送工具,以及处理一些事务(例如:当有客户退订票时,系统会自动修改该航班的余票量;当有客户退票时,如有候补客户满足要求时,则弹出提示等)。第三层主要是面向操作界面的程序代码编写。总的来说,采用分层分模块的程序设计方法,对整个
专注地铁、铁路、市政领域安全管理资料的定制、修改及润色,本人已有7年专业领域工作经验,可承接安全方案、安全培训、安全交底、贯标外审、公路一级达标审核及安全生产许可证延期资料编制等工作,欢迎大家咨询~
文档评论(0)