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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C++课程设计报告飞机订票管理系统.doc

1、青岛理工大学C+面向对象课程设计报告院(系): 计算机工程学院 专业: 软件工程 学生姓名: 班级 软件131班 学号: 题目: 飞机订票管理系统设计 起迄日期: 2015.6.292015.7.10 设计地点: 计算机学院机房 指 导 教 师: 翟正利 丁凡 完成日期: 2015 年7月 10 日C+面向对象课程设计任务书题目24“飞机订票管理系统设计”1、问题描述:航空客运订票的业务包括:查询航班、客票预订和办理退票等。试设计一个航空客运订票系统,已使上述业务可以借助计算机完成。2功能要求:(1)每条航线所涉及的信息有:终点站名、航班号、飞机号、星期几飞行飞行周日(星期几)、乘员定额、余票

2、量、已订票的客户名单(包括姓名、订票量、舱位等级)以及等候补替补的客户名单(包括姓名、所需票量);(2)作为示意系统,全部数据可以只放在内存中;(3)系统能实现的操作和功能如下:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定);查询航线:根据旅客提出的终点站名输入下列信息:航班号、飞机号、星期几起飞,最近航班的日期和余票量。承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或者余票数少于订票额,则需重新寻味客户要求,若需要,可登记排队候补;承办退票业务:根据客户提供的情况(日期、航班),为

3、客户办理退票手续,然后查询该航班是否有人排队等候补,首先询问排在第一的客户,若所有退票额能满足他的要求,则为他办理订票手续否则依次询问其他排队候补的客户。修改航班信息:当航班信息改变可以修改航班数据文件。(选作)为客户订票要求不能满足时,系统可向客户提供到达同一目的地的其他航线情况。3、问题的解决方案:根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块;

4、 (7)功能调试;(8)完成系统总结报告。目 录一、需求分析2二、内容设计2 2.1、根据所选题目给出模块图22.2、画出主要程序的流程图:32.2、编写程序关键代码:8三、调试分析13四、用户手册14五、设计总结20六、参考文献21七、 附录21一、需求分析1.选做此课题或项的目的1通过实验实现对学生信息系统的管理操作;2进一步掌握和利用C+进行程设计的能力;3进一步理解和运用结构化程序设计的思想和方法;4初步掌握开发一个小型实用系统的基本方法;5学会利用流程图或N-S图表示算法;6掌握书写程设计开发文档的能力2. 程序所实现的功能1.输入航班信息并保存到磁盘;2.浏览航班信息;3.修改航班

5、信息并保存到磁盘4.查找航班 5.订票 6.退票 二、 内容设计1. 根据所选题目给出模块图 如图1.1所示飞机订票管理系统修改航班信息查询全部信息退票录入航班信息查询航班信息订票 图1.1 模块图 2.画出主程序及其主要模块的流程图(1).如图2.1所示为查询函数的流程图:开始 输入航班号否 查询成功?是 输出航班信息返回主菜单?否是 主菜单 结束 图2.1 查询函数的流程图(2) .图2.2所示为订票函数流程图 开始输入要订票的姓名是姓名与初始姓名相同?否 输入航班号还有余票,订票?否是存储客户信息到文件修改航班信息(票额) 输出订票信息返回主菜单?否是 主菜单 结束 图2.2 订票函数流

6、程图(3) .图2.3所示为退票函数流程图 开始 输入姓名和航班号信息与文件中信息相同?否是 是否退订?否是从文件中删除该用户订票信息退票成功! 返回主菜单?是否 主菜单 结束 图2.3 退票函数流程图(4) .如图2.4所示为查询全部信息函数 开始 输出乘客信息 输出航班信息 返回主菜单?否是 主菜单 结束 图2.4 查询全部信息函数(5.)如图2.5所示为主程序流程图开始 录入航班信息 进入主菜单 飞机订票管理系统查询所有信息 退票管理 查询航班 订票管理是 返回主菜单?否 退出系统 结束 图2.5 查询全部信息函数3.编写程序关键代码(1) .录入航班信息:void chushi()in

7、t i; ofstream outfile(airline.dat); ofstream file(customer.dat); for (i=0;i3;i+) outfilefli.fligh fli.num fli.place fli.data fli.dticket fli.riqi fli.yticketendl;filecui.name cui.num cui.seat cnumendl; outfile.close();file.close();cout初始化已完毕!endlendl;caidan1(); (2) .查询航班信息:void chaxun1()char place10

8、;int temp,i,a;coutplace;for(i=0;i100;i+)if(strcmp(fli.place,place)=0)temp=i;a=0;cout航班信息endl航班号:fltemp.fligh飞机号:fltemp.num起飞日期:fltemp.data最近航班日期fltemp.riqi余票量fltemp.yticketendl;if(a!=0)cout查询失败!endl;couttemp;if(temp=1) caidan2();(3) .订票:void dingpiao()/ 订票char name10;int num,i,t,j,k,temp;int x;cout请

9、输入你的姓名和想订的航班号:endlendl;coutname;coutendl;coutnum;for(i=0;i300;i+)if(strcmp(name,cui.name)=0)coutt;switch(t) case 1:caidan1();break; default :break; for(i=0;i300;i+)if (name!=cui.name)for(j=0;j10;j+)if(flj.fligh=num)temp=j; if(fltemp.yticket=100) coutx; switch(x) case 1: for (k=0;k3;k+) if (flk.fligh

10、=num) flk.dticket=flk.dticket+1; flk.yticket=flk.yticket-1; cnum=cnum+1; strcpy(cucnum.name,name);cucnum.num=num; cucnum.seat=flk.dticket; ofstream outfile1(airline.dat); for(j=0;j3;j+) outfile1flj.fligh flj.num flj.place flj.data flj.dticket flj.riqi flj.yticketendl; ofstream outfile2(customer.dat,

11、ios:app); outfile2cucnum.name cucnum.num cucnum.seat cnumendl; /打开文件并存储数据cout订票成功!endlendl客户信息:cucnum.namet航班号:cucnum.numt座位号:cucnum.seatendl;outfile1.close();outfile2.close();couttemp;if(temp=1) caidan1();else; ; break; default :caidan1();break;else cout此航班票已经售完,请订其他航班次的票; (4) .退票:void tuipiao()/ 退

12、票char name10;int i,temp,t,num,a,j;struct tmp;cout请输入您的姓名和航班号:endl;coutname;coutnum;coutendl;for(i=0;i300;i+)if (strcmp(cui.name,name)=0)a=0;couttemp; if(temp=1) ofstream outfile1(airline.dat); ofstream outfile2(customer.dat);for(j=0;j=i;j+) outfile2cuj.name cuj.num cuj.seat jendl; for(t=0;t3;t+)if(f

13、lt.fligh=num) flt.dticket=flt.dticket-1;flt.yticket=flt.yticket+1; for(t=0;t3;t+) outfile1flt.fligh flt.num flt.place flt.data flt.dticket flt.riqi flt.yticketendl; else a!=0; if (a!=0) cout没有你的信息,请查证后再操作!;couttemp;if(temp=1)caidan1();(5) .查询全部信息:void chaxunquanbu()int i,temp;cout乘客信息:endlendl;for(i

14、=0;i300;i+)if (cnum=i) temp=i;for(i=0;itemp;i+)cout姓名:cui.namet航班号:cui.numt座位号:cui.seatt编号:i+1endl;coutendl航班信息:endlendl;for(i=0;i3;i+)cout航班号:fli.flight飞机号:fli.numt目的地:fli.placet起飞日期fli.datat已订票数:fli.dtickett最近航班日期fli.riqit剩余票数:fli.yticketendl;couttemp;if(temp=1)caidan1(); (6) .主菜单函数:void caidan1()

15、int i; cout* 航空订票系统v2012 *endl; cout* *endl; cout* 1.订票业务 2.退票业务 *endl; cout* 3.查询客户信息 4.查询全部信息 *endl; cout* 5.查询飞机票 6.退出系统 *endl; cout* *endl; cout* 如果是第一次使用本系统,请载入初始信息 *endl; cout*endl;ifstream infile1(airline.dat);ifstream infile2(customer.dat);for(i=0;ifli.flighfli.numfli.placefli.datafli.dticke

16、tfli.riqifli.yticket;for(i=0;icui.namecui.numcui.seatcnum; infile1.close();infile2.close(); /读取数据couta;coutendl;switch(a)case 1:dingpiao();break; case 2:tuipiao();break; case 3:chaxun();break; case 4:chaxunquanbu();break; case 5:chaxun1();break; case 6:;break; default:cout输入错误,请重新输入正确的代码:;list(); /输

17、入代码(8) .查询客户信息函数:void chaxun()char name10;int temp,i,a;coutname;for(i=0;i300;i+)if (strcmp(cui.name,name)=0)temp=i;a=0;cout*乘客信息*endl姓名:cutemp.namet航班号:cutemp.numt座位号:cutemp.seatendl;if (a!=0) cout没有你的信息,请查证后再操作!endl;couttemp;if(temp=1)caidan1(); 三、调试分析1.实际完成的情况说明(完成的功能,支持的数据类型等)。 该航空订票管理系统主要完成的支持in

18、t(航班号,座位号等),char(姓名,终点,到达日期等,主要实现的功能如下:1. 航班信息与客户信息的初始化。2. 客户信息的录入。3. 航班信息的修改(包括余票和已定票的改动)。4. 订票功能。5. 退票功能。6. 查询航线功能。7. 查询全部信息功能(包括用户和航班的信息)。2. 程序的性能分析。1. 本程充分利用了各种系统函数,使程序十分简洁。2. 程序相比之下较大,运行起来需要一定的时间。3. 根据不同的功能建立不同的类,对具体功能又分别用相应的函数来据体实现使程序变得有序易懂。3. 上机过程中出现的问题及其解决方案。 上机过程遇到的问题有:1. 不了解文件的使用,包括读取文件到程序

19、,将数据写入文件等。2. 对整体程序的模版不够理解,刚开始不能够完全地构思出程序的全部。3. 出现括号和符号忘记匹配,或者马虎造成单词拼错以及函数体写错。4. 结构体的格式开始不够熟练。5. 循环体的嵌套使用不够熟悉。6. 使用string类型不是那么熟练。 解决方案:1. 查阅相关书籍,以及上网查找资料,询问基础较好的同学,从而对文件的操作有了进一步的提升。2. 上网查找类似的程序,观看其大致结构,从而提炼出精华,找出大致规律,运用到自己的程序里,使程序不至于那么僵硬。3. 每写完一段程序就检查该段程序有没有错误,分段缩小范围修改,采用分步调试方法,逐步找出问题所在。4. 上网以及查阅结构体

20、的详细说明,学会熟练使用结构体。5. 可以先画流程图列出所有循环体的图示,根据图示来编写程序中循环体的嵌套,这样可以大大减少循环体的出错。6. 开始使用char类型来定义字符串,后来改成方便的string类型,之前忘记头文件#include,通过学习进一步理解string类型。4. 程序中可以改进的地方说明。1. 退票管理中可增加功能,区分退票在飞机起飞前和飞机起飞后,根据不同的选择来退还不同金额的退款。2. 订票函数里可适当提升订票的最大人数,以免发生系统崩溃的现象。3. 查询函数里可以增加查询合适航班的方式,以便于更好程度地适应用户多方面的不同订票需求。5. 程序中可以扩充的功能及设计实现构想。1. 可以增加用户登录功能,让用户可以设置自己的帐号密码,以便于用户更方便的使用本飞机订票系统办理航空业务。2. 可以将dos系统界面显示做成mfc界面显示,使显示更加清晰,更便于用户理解和使用本系统。3. 可以在航空飞机订票的基础上发展其他订票功能,比如火车订票,汽车订票,更全面地提供订票管理服务。 四、 用户手册1.运行程序,显示主菜单如图3.1所示:

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2