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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

飞机订票系统课程设计文档格式.docx

1、3.1 数据结构 93.2 程序模块 93.3 各模块之间的调用关系 93.4 源程序代码 10第四章 测试与分析 204.1 测试数据选择 204.2 测试结果分析 20总 结 22心得体会 22参考文献 23第一章开发环境和开发工具1.1C/ C +语言简介一种面向对象的开发语言,C+是一种使用非常广泛的计算机编程语言。C+是一种静态数据类型检查的、支持多重编程方式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。其编译器比目前其他计算机语言的编译技术更复杂。1.2 开发背景 随着科学技术的不断发展,计算机科学日渐成熟,其强大的功能已为人

2、们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理已成为衡量各个国家科学化和现代化的重要标志,而交通方式的全面自动化、信息化则是其中重要的组成部分,在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的航空订票系统具有一定的使用价值和现实意义。1.3 开发环境本文所采用的开发环境主要是基于VC6.0和基于面向对象程序设计的c+。VC是个平台开工具。该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS平台下的功能,例如剪切、复制、粘贴和查找替换等。而且在功能上也有它的独特特色例如语法加亮、C内嵌汇编、自定义扩展库的支

3、持等。第二章 算法思想2.1 系统需求分析随着计算机技术的飞速发展及经济全球化的推进以及企业激烈的竞争,各大机场订票系统已经越来越不能适应人们日常出行的局面,所以我们现在需要一个检索迅速、查找方便、易修改功能齐全方便的系统来适应我们的需求。问题的提出:为了减少人工工作量,提高工作效率,使机场管理员的工作更加有效的进行。2.2 系统总体设计2.2.1 系统设计目标 本文研究开发的飞机订票系统用于实现如下四个方面的目标: )录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定

4、航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;退票: 可退票,退票后修改相关数据文件;2.2.2 开发设计思想 基于以上系统设计目标,本文在开发飞机订票系统时遵循了以下开发设计思想: 采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。尽量达到操作过程中的直观、方便、实用、安全等要求。系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。系统应具备数据库维护功能,及时根据用户需

5、求进行数据的添加、删除、修改、备份等操作。2.2.3 系统功能模块设计 本系统分为六个模块:增加航班模块、浏览航班模块、查找航班模块、航班排序模块、订票模块、退票模块。得到如图所示系统功能模块图。图1-1系统功能模块图2.3 算法思想描述(1),系统启动时会通过输入航班信息来给乘客提供范围(2)当选择功能1时,进入增加航班模块(3)当选择功能2时,进入浏览航班信息模块(4)当选择功能3时,进入航班操作模块(5)当选择功能4时,进入订票系统模块(6)当选择功能5时,进入退票系统模块(7)当选择功能6,7时,是对前边操作的保存和载入(8)当选择功能8时退出系统第三章 算法实现3.1 数据结构飞机订

6、票系统是一个数据库应用系统,航班的所有信息都保存在数据库中。 3.2 程序模块voidorder;/排序/input;/输入航班/search_time()/输入时间查找/search_end()/输入地点查找/menu1()/飞机售票操作/intsearch()/查询/book()/订票系统/back()/退票系统/save()/保存/load()/载入/ 3.3 各模块之间的调用关系程序从主函数开始,首先调用menu函数清屏进入系统开始页面,利用switchcase结构选择自己所需的功能模块。具体操作时,首先利用input函数录入航班信息,save函数储存航班信息、order函数进行排序;

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

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

9、i; system( cls );请输入航班的数目(0-%d)?:,N);n); /*要输入的记录个数*/n请输入数据nn for(i=0;in;i+) printf(n请输入第 %d 航班记录.n,i+1); input(i); /*调用输入函数*/ getchar(); menu();void printf_one(int i) /*显示一个记录的函数*/%11s %6s %10s %6s %6d %6d %6d,tii.ID,tii.BePlace,tii.EnPlace,tii.data,tii.price,tii.max,tii.num);void browse() puts(n-n

10、t航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n printf_one(i);void order() /*排序模块(按平均成绩)*/ int i,j; struct plane s;i+) /*冒泡法排序*/ for(j=i+1;j0) s=tii; tii=tij; tij=s; browse();void search_time() int i,m=0;nnEnter the time:,s.data); /*输入出发的时间*/ if(strcmp(s.data,tii.data)=0) m+; if(m!=0)&(m%10=0) /*目的是分屏显示*/ printf

11、(nnPress any key to contiune . . . getchar(); puts(nn printf_one(i); printf( /*调用显示一个记录的函数*/ /*按任意健*/ menu1();void serch_end()nnEnter the end Place:,s.EnPlace); /*输入要到达的地方*/ if(strcmp(tii.EnPlace,s.EnPlace)=0)void menu1() int n,w1; do /*清屏*/tttt 飞机售票操作!tt*MENU*nntttt1.按照时间排序tttt2.按照时间查找航班tttt3.按照地点查

12、找航班tttt4.返回主菜单nntt*nChoice your number(1-4): bb if(n4) /*对选择的数字作判断*/ w1=1;your choice is not between 1 and 4,Please input again: getchar(); else w1=0; while(w1=1); /*选择功能*/ switch(n) case 1:order();break; case 2:search_time(); case 3:serch_end(); case 4:menu();int search() /*查找模块*/ int i,k; k=-1;nn请

13、输入要订票的起飞地点:,s.BePlace);nn请输入要订票的降落地点:nn请输入要订票的起飞时间:i+) /*查找要修改的数据*/ if(strcmp(s.BePlace,tii.BePlace)=0&strcmp(s.EnPlace,tii.EnPlace)=0&strcmp(s.data,tii.data)=0) k=i; /*找到要修改的记录*/ printf_one(k); break; /*调用显示一个记录的函数*/ if(k=-1)nnNO exist! return -1; else return k;void book()欢迎进入售票窗口! i=search(); if(i

14、!=-1) if(tii.num=tii.max)n该趟航班票已售完! tii.num+; printf(n订票成功!该航班不存在!void back() int i,k=-1;欢迎进入退票窗口!nn输入航班代号:,s.ID); if(strcmp(s.ID,tii.ID)=0) tii.num-;n退票成功!void save() int w=1; FILE *fp; if(fp=fopen(ticket.txt,wt)=NULL) /*以输出打开方式,在此前的记录被覆盖*/nCannot open filen return ; if(fwrite(&tii,sizeof(struct pl

15、ane),1,fp)!=1) file write errorn w=0; if(w=1)file save ok! fclose(fp);void load() FILE*fp; int i,w; w=1;rt)=NULL)nCannotopen filen return ; n=0;!feof(fp); fread(&tii,sizeof( struct plane),1,fp); n+; n=n-1;Load file ok!void menu() /*清屏*/ /*清屏*/tttt 飞机售票管理系统!tttt1.输入新航班tttt2.浏览 tttt3.航班操作tttt4.订票tttt5

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

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

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