- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
航空客订票系统
数据结构课程设计
——航空订票系统
学院:计算机科学与技术学院
班级:网络工程081
姓名:杨阳
学号:0813072011
一、需求分析
1).每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行日期、定票量、已定票的乘客名单、票价。
2).作为示意系统,所有数据可以只放在内存中。
3).系统能实现的操作和功能如下:
查询航线:能根据乘客提出的终点站名输出下列信息:航班号、所属航空公司、班机号、飞行日期、起飞时间、目的机场、到达时间。
承办售票业务
承办定票业务
承办退票业务
二、设计概要
1、抽象数据类型的定义如下:
ADT Schedule{
数据对象:D={ei| i=1,2,3,…,n;n≧0;ei∈Schedule}
数据关系:R1={<ei-1, ei>|<ei-1,ei>表示ei-1和ei之间有先后顺序关系}
基本操作:
Schedule *OutFile(fstream outfile);
操作结果:打开文本文件dipiao.txt,把文件中的数据送到结构体数组中。
bool Search_airnum(Schedule *P,Schedule plane,char airnum[]);
初始条件:结构体数组P存在
操作结果:按照输入的航班号进行查找,并显示。
bool Search_Airport(Schedule *P,Schedule plane[],int num,char portname[]);
初始条件:结构体数组P存在
操作结果:按照输入的时间和目的机场进行查找,并显示。
} ADT Schedule
2、抽象数据类型队列的定义如下:
ADT LinkQueue{
数据对象:D={ei| i=1,2,3,…,n;n≧0;ei∈LinkQueue}
数据关系:R1={<ei-1, ei>|<ei-1,ei>表示ei-1和ei之间有先后顺序关系}
基本操作:
bool InitQueue(LinkQueue Q);
操作结果:创建一个空的队列Q。
bool DestroyQueue(LinkQueue Q);
初始条件:队列Q存在
操作结果:销毁队列Q,Q不再存在。
bool EnQueue(LinkQueue Q,CSNode e);
初始条件:队列Q存在
操作结果:插入元素e为Q的新的队尾元素。
bool ClearQueue(LinkQueue Q);
初始条件:队列Q存在
操作结果:清空队列Q。
bool QueueEmpty(LinkQueue Q);
初始条件:队列Q存在
操作结果:若队列为空,则返回true,否则返回false。
bool DeQueue(LinkQueue Q,CSNode e);
初始条件:队列Q存在
操作结果:删除Q的队头元素,并用e返回其值,并返回true。
int QueueLength(LinkQueue Q);
初始条件:队列Q存在
操作结果:返回队列Q的长度。
bool GetHead(LinkQueue Q,CSNode e);
初始条件:队列Q存在
操作结果:用e返回队首元素,并返回true。
} ADT LinkQueue
三、详细设计
1、程序流程图
主界面查询
主界面
查询系统
订票系统
退票系统
是否有票?
没有票
有票
售票
四、调试分析
1、该程序的主要存储结构是数组,其次有队列,队列主要用来存放定票人的信息。
2、进行查找的时候,能够根据输入的时间区间进行模糊查找,并且把找到的所有符合条件的航班显示出来。
3、对输入的错误信息给出警告或提示,对一次操作的完成也给出相应的提示。
五、测试结果
图1 主界面
图2 订票界面
图3 退票界面
图4 查飞机信息界面
图5 查乘客信息界面
六、总结和体会
通过这次的数据结构课程设计,发现了自己学习还有很多不足的地方,对于这个航空订票系统,有很多的漏洞,包括C++语言上还有很多可以修改的地方。在系统的设计上也和真实航空售票系统有很多差异,例如买票不是依次顺序卖票的,而是先到者选票,这个在本系统中没有实现好,只能说是个很粗糙的系统,还有很多地方值得我去修改。短短几天,能成功调试成功,我感到很高兴,毕竟面对这个相对于以往更复杂的系统,我做了出来,而且基本满足设计需求。编程是个非常辛苦非常快乐的事情,希望在未来我能更加灵活运用C++语言。
九、附:源程序
#include iostream.h
#include stdio.h
#include string.h
#include conio.h
#define m
您可能关注的文档
最近下载
- 2025年安徽皖江高速公路有限公司高速公路收费人员招聘笔试模拟试题及答案解析.docx VIP
- T GXTC 0014—2024 新式(现制)茶饮 茉莉花茶基底茶.pdf VIP
- 急性视网膜坏死综合征.pptx VIP
- 正常人体解剖学资料.pdf
- 《相遇问题》(说课稿)-2024-2025学年四年级上册数学青岛版[001].docx VIP
- 外伤性感染性眼内炎防治专家共识(2023年版)PPT.pptx VIP
- 第1节 功(教学课件)物理沪粤版2024九年级上册.pptx VIP
- 违规接受吃请检讨书(推荐).docx VIP
- 2024新人教版一年级数学上册认识立体图形第三单元教材整体分析.pdf VIP
- 密码技术应用员理论知识题及答案.doc VIP
文档评论(0)