ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:188.99KB ,
资源ID:5386792      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5386792.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(飞机订票系统课程设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

飞机订票系统课程设计.docx

1、飞机订票系统课程设计河南城建学院课程设计报告书专 业:计算机科学与技术 课程设计名称:数据结构课程设计题 目:飞机订票系统班 级:0814122班学号:081412220姓名:郭晓甜同 组 人 员: 王彬宇指 导 老 师:张延红 张芳芳 杨斌完 成 时 间:2014年2月28日摘要随着时代的进步社会分工的不断细化,各个行业联系的不断密切,人们的出行越来越多,出行的方式也各种各样,作为空中的重要交通工具,飞机航空系统也在不断地得到优化,其中重要的一项就是飞机航空订票系统,因此好的订票系统关系着人么日常出行的方便与否,设计并编制出符合人们需要的航空订票系统是一项繁重而且艰巨的任务,需要我们认真去完

2、成。本文采用C作为前台开发工具,VC6.0作为程序代码的实现,旨在实现对现有飞行系统中遇到的各种情况进行良好的改进。 关键词:C,C+,VC6.0,数据结构,飞机订票系统; 目录 1第一章 开发环境和开发工具 11.1 C#语言简介 11.2 开发背景 11.3 开发环境 1第二章 算法思想 22.1 系统需求分析 22.2 系统总体设计 22.2.1 系统设计目标 32.2.2 开发设计思想 32.2.3 系统功能模块设计 32.3 算法思想描述 4第三章 算法实现 93.1 数据结构 93.2 程序模块 93.3 各模块之间的调用关系 93.4 源程序代码 10第四章 测试与分析 204.

3、1 测试数据选择 204.2 测试结果分析 20总 结 22心得体会 22参考文献 23第一章开发环境和开发工具1.1C/ C +语言简介一种面向对象的开发语言,C+是一种使用非常广泛的计算机编程语言。C+是一种静态数据类型检查的、支持多重编程方式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。其编译器比目前其他计算机语言的编译技术更复杂。1.2 开发背景 随着科学技术的不断发展,计算机科学日渐成熟,其强大的功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理已成为衡量各个国家科学化和现代化的

4、重要标志,而交通方式的全面自动化、信息化则是其中重要的组成部分,在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的航空订票系统具有一定的使用价值和现实意义。1.3 开发环境本文所采用的开发环境主要是基于VC6.0和基于面向对象程序设计的c+。VC是个平台开工具。该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS平台下的功能,例如剪切、复制、粘贴和查找替换等。而且在功能上也有它的独特特色例如语法加亮、C内嵌汇编、自定义扩展库的支持等。第二章 算法思想2.1 系统需求分析随着计算机技术的飞速发展及经济全球化的推进以及企业激烈的竞争,各大机场订票系统已经

5、越来越不能适应人们日常出行的局面,所以我们现在需要一个检索迅速、查找方便、易修改功能齐全方便的系统来适应我们的需求。问题的提出:为了减少人工工作量,提高工作效率,使机场管理员的工作更加有效的进行。2.2 系统总体设计2.2.1 系统设计目标 本文研究开发的飞机订票系统用于实现如下四个方面的目标: )录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果

6、该航班已经无票,可以提供相关可选择航班;退票: 可退票,退票后修改相关数据文件;2.2.2 开发设计思想 基于以上系统设计目标,本文在开发飞机订票系统时遵循了以下开发设计思想: 采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。尽量达到操作过程中的直观、方便、实用、安全等要求。系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。2.2.3 系统功能模块设计 本系统分为六个模块:增加航班模块、浏览航班模块、查找

7、航班模块、航班排序模块、订票模块、退票模块。得到如图所示系统功能模块图。图1-1系统功能模块图2.3 算法思想描述(1),系统启动时会通过输入航班信息来给乘客提供范围(2)当选择功能1时,进入增加航班模块(3)当选择功能2时,进入浏览航班信息模块(4)当选择功能3时,进入航班操作模块(5)当选择功能4时,进入订票系统模块(6)当选择功能5时,进入退票系统模块(7)当选择功能6,7时,是对前边操作的保存和载入(8)当选择功能8时退出系统第三章 算法实现3.1 数据结构飞机订票系统是一个数据库应用系统,航班的所有信息都保存在数据库中。 3.2 程序模块voidorder;/排序/voidinput

8、;/输入航班/voidsearch_time()/输入时间查找/voidsearch_end()/输入地点查找/voidmenu1()/飞机售票操作/intsearch()/查询/voidbook()/订票系统/voidback()/退票系统/voidsave()/保存/voidload()/载入/ 3.3 各模块之间的调用关系程序从主函数开始,首先调用menu函数清屏进入系统开始页面,利用switchcase结构选择自己所需的功能模块。具体操作时,首先利用input函数录入航班信息,save函数储存航班信息、order函数进行排序;进入订票系统时,首先进入menu1函数在调用load函数载入

9、数据及调用search_time函数、search_end函数查找航班信息,然后在由book函数订购机票save函数存储订票信息,退票时,进入back函数模块,完成退票后,回到初始menu函数模块。 3.4 源程序代码#include #include #include #define N 1000typedef struct plane char ID10; /*航班代号*/ char BePlace10;/*飞机起飞地点*/ char EnPlace10;/*飞机降落终点*/ char data15;/*飞机起飞时间*/ int max;/*飞机最大乘客人数*/ int price;/*飞

10、机票价*/ int num;/*飞机已售票数*/PLANE;PLANE tiN;int n;/*当前的航班数目*/void menu();void menu1();void input(int i) printf(请输入航班代号:n); scanf(%s,tii.ID); printf(请输入起飞地点:n); scanf(%s,tii.BePlace); printf(请输入降落地点:n); scanf(%s,tii.EnPlace); printf(请输入起飞时间:n); scanf(%s,tii.data); printf(请输入航班的最大载客人数:n); scanf(%d,&tii.ma

11、x); printf(请输入航班的票价:n); scanf(%d,&tii.price); tii.num=0;void enter() int i; system( cls ); printf(请输入航班的数目(0-%d)?:,N); scanf(%d,&n); /*要输入的记录个数*/ printf(n请输入数据nn); for(i=0;in;i+) printf(n请输入第 %d 航班记录.n,i+1); input(i); /*调用输入函数*/ getchar(); menu();void printf_one(int i) /*显示一个记录的函数*/ printf(%11s %6s

12、%10s %6s %6d %6d %6d,tii.ID,tii.BePlace,tii.EnPlace,tii.data,tii.price,tii.max,tii.num);void browse() int i; system( cls ); puts(n-); printf(nt航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n); for(i=0;in;i+) printf_one(i); printf(n); getchar(); getchar(); menu();void order() /*排序模块(按平均成绩)*/ int i,j; struct plane

13、s; system( cls ); for(i=0;in;i+) /*冒泡法排序*/ for(j=i+1;j0) s=tii; tii=tij; tij=s; browse();void search_time() int i,m=0; struct plane s; system( cls ); printf(nnEnter the time:); scanf(%s,s.data); /*输入出发的时间*/ puts(n-); printf(nt航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n); for(i=0;in;i+) if(strcmp(s.data,tii.da

14、ta)=0) m+; if(m!=0)&(m%10=0) /*目的是分屏显示*/ printf(nnPress any key to contiune . . .); getchar(); puts(nn); printf_one(i); printf(n); /*调用显示一个记录的函数*/ puts(n-); getchar(); /*按任意健*/ getchar(); menu1();void serch_end() int i,m=0; struct plane s; system( cls ); printf(nnEnter the end Place:); scanf(%s,s.En

15、Place); /*输入要到达的地方*/ puts(n-); printf(nt航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n); for(i=0;in;i+) if(strcmp(tii.EnPlace,s.EnPlace)=0) m+; if(m!=0)&(m%10=0) /*目的是分屏显示*/ printf(nnPress any key to contiune . . .); getchar(); puts(nn); printf_one(i); printf(n); /*调用显示一个记录的函数*/ puts(n-); getchar(); /*按任意健*/ get

16、char(); menu1();void menu1() int n,w1; do system( cls ); /*清屏*/ puts(tttt 飞机售票操作!nn); puts(tt*MENU*nn); puts(tttt1.按照时间排序); puts(tttt2.按照时间查找航班); puts(tttt3.按照地点查找航班); puts(tttt4.返回主菜单); puts(nntt*n); printf(Choice your number(1-4): bb); scanf(%d,&n); if(n4) /*对选择的数字作判断*/ w1=1; printf(your choice is

17、 not between 1 and 4,Please input again:); getchar(); getchar(); else w1=0; while(w1=1); /*选择功能*/ switch(n) case 1:order();break; case 2:search_time();break; case 3:serch_end();break; case 4:menu();break; int search() /*查找模块*/ int i,k; struct plane s; k=-1; system( cls ); printf(nn请输入要订票的起飞地点:); sca

18、nf(%s,s.BePlace); /*输入要到达的地方*/ printf(nn请输入要订票的降落地点:); scanf(%s,s.EnPlace); printf(nn请输入要订票的起飞时间:); scanf(%s,s.data); /*输入出发的时间*/ for(i=0;i=tii.max) printf(n该趟航班票已售完!); else tii.num+; printf(n订票成功!n); else printf(该航班不存在!n); getchar(); getchar(); /*按任意健*/ menu();void back() int i,k=-1; struct plane s

19、; system( cls ); printf(欢迎进入退票窗口!n); printf(nn输入航班代号:); scanf(%s,s.ID); /*输入要到达的地方*/ for(i=0;in;i+) /*查找要修改的数据*/ if(strcmp(s.ID,tii.ID)=0) k=i; /*找到要修改的记录*/ printf_one(k); break; /*调用显示一个记录的函数*/ if(k=-1) printf(nnNO exist!); else tii.num-; printf(n退票成功!n); getchar(); /*按任意健*/ getchar(); /*按任意健*/ men

20、u();void save() int w=1; FILE *fp; int i; system( cls ); if(fp=fopen(ticket.txt,wt)=NULL) /*以输出打开方式,在此前的记录被覆盖*/ printf(nCannot open filen); return ; for(i=0;in;i+) if(fwrite(&tii,sizeof(struct plane),1,fp)!=1) printf(file write errorn); w=0; if(w=1) printf(file save ok!n); fclose(fp); getchar(); get

21、char(); menu();void load() FILE*fp; int i,w; w=1; system( cls ); if(fp=fopen(ticket.txt,rt)=NULL) printf(nCannotopen filen); w=0; return ; n=0; for(i=0;!feof(fp);i+) fread(&tii,sizeof( struct plane),1,fp); n+; n=n-1; fclose(fp); if(w=1) printf(Load file ok!); getchar(); getchar(); menu();void menu()

22、 int n,w1; do system( cls ); /*清屏*/ /*清屏*/ puts(tttt 飞机售票管理系统!nn); puts(tt*MENU*nn); puts(tttt1.输入新航班); puts(tttt2.浏览 ); puts(tttt3.航班操作); puts(tttt4.订票); puts(tttt5.退票); puts(tttt6.保存); puts(tttt7.载入); puts(tttt8.退出); puts(nntt*n); printf(Choice your number(1-8): bb); scanf(%d,&n); if(n8) /*对选择的数字作

23、判断*/ w1=1; printf(your choice is not between 1 and 8,Please input enter to choice again:); getchar(); getchar(); else w1=0; while(w1=1); /*选择功能*/ switch(n) case 1:enter();break; /*输入模块*/ case 2:browse();break; /*浏览模块*/ case 3:menu1();break; /*查找模块*/ case 4:book();break; /*订票模块*/ case 5:back();break; /*退票模块*/ case 6:save();break; /*保存模块*/ case 7:load();break; /*加载模块*/ case 8:exit(0); void main() menu(); 第四章 测试与分析4.1试数据选择 航班 起飞地点 降落地点 时间 载客量 12222 北京 伦敦 20140228 55 21115 北京 上海 20140228 484.2测试结果分析在输入测试数据后选择订票选项并再次输入相应的数据会完成订票业务,在订票业务中调用book函数,所有函数的时间复杂度为O(n),系统本身采用线性结构模式 总 结 本系统

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1