飞机订票管理系统_第1页
飞机订票管理系统_第2页
飞机订票管理系统_第3页
飞机订票管理系统_第4页
飞机订票管理系统_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机科学与技术教研室课程设计说明书(2013/2014学年第二学期)课程名称课程设计基础(二)设计题目飞机订票管理系统学号姓名小组成员起止时间: 2013年6月28日至2014年7月11日课程设计评 语该生平时表现良好,参与了课程设计的整个过程,而且完成了飞机订票管理系统的代码编写,运用了类、类的继承、构造函数等知识,并实现了录入、删除、查询、修改及退出程序运行等基本功能。在此基础上还实现了订票,退票功能。课程设计说明书填写正确,条理清楚,对于课程设计过程介绍详细,代码正确。作品演示熟练,能按照设计要求完成指定的功能。答辩过程中,回答问题正确,熟练,对自己的程序描述清楚,条理性强。平时成绩报告成绩演示与答辩成绩成绩总评指导教师(签字)年月日注:成绩均用百分制。总成绩=平时成绩*20%+报告成绩*40%+演示与答辩成绩*40%设计题目:飞机订票管理系统一、课程设计目的:熟练掌握,C++语言程序的编写,调试及运行;熟练掌握C++程序的类的应用。熟练掌握类的继承、构造函数的应用。熟练掌握文件流的应用。(5)能够独立调试程序;(6)学生独立编程能力,运用所学知识解决问题的能力。二、课程设计正文:系统分析按照图书管理系统,进行分析,我以为该系统应该分为三大部份功能:第一大部份功能,应该是针对乘客的应用程序;第二大部份功能,应该是针对管理员的应用程序。第三大部份,应该是退出该系统的应用程序。分析乘客程序第一大部份功能,还应分为两小部份功能:第一小部份功能,应该是订票业务,按照客户提出的航班号,查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票数少于订票额,则需从头询问客户要求,若需要,可记录排队候补。第二小部份功能,应该是退票业务,按照客户提供的情况航班号、终点站等信息,为客户办理退票手续。分析管理员程序但是,第二大部份功能,还应该分为八小部份:第一小部份功能,应该是录入功能,可以录入航班信息,如:终点站名、航班号、飞机号、礼拜几飞行、乘员定额、余票量等重要信息。然后,把数据存储在一个数据文件中。第二小部份功能,应该是添加功能,当录入完以后,还需可以添加一个航班信息,就运用此功能。第三小部份功能,应该是显示功能,显示航班信息,如:终点站名、航班号、飞机号、礼拜几飞行、乘员定额、余票量、已订票的客户名单包括姓名、订票量、舱位品级,和等候补替的客户名单包括姓名、所需票量。第四小部份功能,应该是查询功能,按照旅客提出的终点站名,查询出下列信息:航班号、飞机号、礼拜几起飞,最近航班的日期和余票量。第五小部份功能,应该是修改功能,若是那条航班信息录入错误可以对其进行修改,把航班信息从头输入一遍。第六小部份功能,应该是删除功能,若是那条航班信息录入错误可以对其进行删除,把航班的所有信息删除。第七小部份功能,应该是订票功能,按照类的继承,继承乘客类的订票函数。按照客户提出的航班号,查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票数少于订票额,则需从头询问客户要求,若需要,可记录排队候补。第八小部份功能,应该是退票功能,按照类的继承,继承乘客类的退票函数,然后,在此基础上,添加上管理员查询该航班是不是有人排队等候补,首先询问排在第一的客户,若剩余票能知足他的要求,则为他办理订票手续,不然依次询问其他排队候补的客户。系统设计编写要求(1) 每条航线所涉及的信息有:终点站名、航班号、飞机号、礼拜几飞行、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位品级)和等候补替的客户名单(包括姓名、所需票量);(2) 作为示意系统,全数数据可以只放在内存中;(3)系统能实现的操作和功能如下:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定);查询航线:按照旅客提出的终点站名输入下列信息:航班号、飞机号、礼拜几起飞,最近航班的日期和余票量。承办订票业务:按照客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票数少于订票额,则需从头询问客户要求,若需要,可记录排队候补;承办退票业务:按照客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班

是不是有人排队等候补,首先询问排在第一的客户,若所有退票额能知足他的要求,则为他办理订票手续不然依次询问其他排队候补的客户。修改航班信息:当航班信息改变可以修改航班数据文件。程序流程程序流程如图1所示。整体设计飞机订票管理系统进行设计:首先,对飞机订票管理系统进行分类,把它分为两个类:1.乘客类2.管理员类;管理员类继承乘客类,然后别离编辑这两个类,有了这几大部份,然后进行细化。乘客类设计按照分析的结果乘客类分为两个小部份功能:(1)对其订票功能设计首先,概念一个订票函数的函数,进行订票时,先进行查询,当余票为0时,询问乘客是不是进行候补排队,若是排队则录入候补人员的姓名、需求量,当余票不为零时,乘客订票输入自己的姓名、需求量和舱位品级等信息。(2)对其退票功能设计若是乘客进行退票,退票成功,余票加1,则管理员询问候补人员是不是定阅此票,这个订票流程和订票功能一样。管理员程序设计按照分析的结果面对读者系统分为6个小部份功能:(1)对录入功能进行设计进行录入,先录入终点站名,当终点站录入为0时停止录入,录入的数据贮存在“”文件中。(2)对添加功能进行设计进行添加时,在原有的数据中,继续添加相应的数据,并把着这数据贮存在“”文件中。能够一同显示出来。(3)对显示功能进行设计挪用“”文件中的所有数据,把他们依照必然格式显示出来。(4)对查询功能进行设计输入要查询的终点站的名字,然后进行搜寻,把对应的所有相关的数据输出出来。(5)对修改功能进行设计把所有的数据显示出来,然后,选择要修改的数据,然后从头输入,并替换它。(6)对删除功能进行设计把所有的数据显示出来,然后,选择要删除的数据,对其进行删除对应的“”文件中的数据。系统实施录入功能其主要代码为:for(i=0;i<M;i++){cout〈〈"友情提示:当终点站输入为0事停止输入°"〈〈endl;cout〈〈"终点站:"〈〈endl;cin>>destination;if(destination=="0")break;if(destination!="0"){N++;outfile<<destination<<"";cout〈〈"航班号:"〈〈endl;cin>>flight_number;outfile〈〈flight_number〈〈"";cout〈〈"飞机号:"〈〈endl;cin>>plane_number;outfile〈〈plane_number〈〈"";cout〈〈"礼拜:"〈〈endl;cin>>week;outfile〈〈week〈〈"";cout〈〈"乘客定额:"〈〈endl;cin>>passenger_number;outfile〈〈passenger_number〈〈""cout〈〈"余票:"〈〈endl;cin>>remain_ticket;outfile〈〈remain_ticket〈〈"";}其录入执行结果如图2所示。舀屠蒸示:当终点站输人为两事停止输入。肮班号;O:乘容定额::当终点站输入为回事停止输入。图2录入功能添加功能其主要代码为:N=N+1;cout〈〈"请输入您要添加的航班信息"〈〈endl;cout〈〈"终点站:"〈〈endl;cin>>destination;outfile〈〈destination〈〈"";cout〈〈"航班号:"〈〈endl;cin>>flight_number;outfile〈〈flight_number〈〈"";cout〈〈"飞机号:"〈〈endl;cin>>plane_number;outfile〈〈plane_number〈〈"";cout〈〈"礼拜:"〈〈endl;cin>>week;outfile〈〈week〈〈"";cout〈〈"乘客定额:"〈〈endl;cin>>passenger_number;outfile〈〈passenger_number〈〈"";cout〈〈"余票:"〈〈endl;cin>>remain_ticket;outfile〈〈remain_ticket〈〈"";();cout〈〈"已添加成功!"〈〈endl;其添加执行结果如图3所示。

图3添加功能图3添加功能星期:显示功能其主要代码为:for(k=0;k<N;k++){infile>>destination;cout〈〈"终点站:"〈〈setw(4)〈〈destination;infile>>flight_number;cout〈〈"航班号:"<<setw(4)〈〈flight_number;infile>>plane_number;cout〈〈"飞机号:"<<setw(4)〈〈plane_number;infile>>week;cout〈〈"礼拜:"〈〈setw(4)〈〈week;infile>>passenger_number;cout〈〈"乘客定额:"<<setw(4)〈〈passenger_number;infile>>remain_ticket;cout〈〈"余票:"〈〈setw(4)〈〈remain_ticket〈〈endl;}其显示执行结果如图4所示。终点站:~~a康班号:久飞独号:[星黔丄辈客定轨f终点站:W龜班号二2飞机営:F星崩:2泰客定驗2奈票:2图4显示功能查询功能其主要代码为:cout〈〈"请输入终点站!"〈〈endl;cin>>search_destinationfor(i=0;i<N;i++)if(destination[i]==search_destination){cout<<""cout〈〈setw(4)〈〈"终点站:"〈〈destination[i];cout〈〈setw(4)〈〈"航班号:"〈〈flight_number[i];cout〈〈setw(4)〈〈"飞机号:"〈〈plane_number[i];cout〈〈setw(4)〈〈"礼拜:"〈〈week[i];cout〈〈setw(4)〈〈"乘客定额:"〈〈passenger_number[i];cout〈〈setw(4)〈〈"余票:"〈〈remain_ticket[i]〈〈endl;}elsecout<<"无抵达此地的航班!"〈〈endl;其查询执行结果如图5所示。请输入终点站!终点站5航班号=丄飞机号=丄星期廿乘客定额沁余票沁图5查询功能修改功能其主要代码为:cout〈〈"你想修改第几个航班信息?"〈〈endl;cin>>k;k=k-1;cout〈〈"请输入新的数据:"〈〈endl;cout〈〈"终点站:"〈〈endl;cin>>destination[k];cout〈〈"航班号:"〈〈endl;cin>>flight_number[k];cout〈〈"飞机号:"〈〈endl;cin>>plane_number[k];cout〈〈"礼拜:"〈〈endl;cin>>week[k];cout〈〈"乘客定额:"〈〈endl;

cin>>passenger_number[k];cout〈〈"余票:"〈〈endl;cin>>remain_ticket[k];其修改执行结果如图6所示你想修改第几萃号号?TH砂砂自心山-也--RI你想修改第几萃号号?TH砂砂自心山-也--RI9a时疏■■■■12=1垂客定额记畲票记=2乘客定筋:2余票:2"八»7・航班号:七机号,o:乘容定额]余票!占修改成功!图6修改功能删除功能其主要代码为:cout〈〈"您想删除第几个?"〈〈endl;cin>>k;k=k-1;();ofstreamoutfile("",ios::out);if(!outfile){cerr〈〈"openerror"〈〈endl;exit(1);}for(i=0;i〈N;i++){if(i!=k){outfile〈〈destination[i]〈〈"";outfile〈〈flight_number[i]〈〈"";outfile〈〈plane_number[i]〈〈"";

outfile<<week[i]<<"";outfile<<passenger_number[i]<<"outfile〈〈remain_ticket[i]〈〈""〈〈endl;}}();N=N-1;cout〈〈"已删除成功!"〈〈endl;其删除执行结果如图7所示。警删除劇吉删除成功!:1=2警删除劇吉删除成功!:1=2=2乘客定颔泊图7删除功能订票功能其主要代码为:if(remain_ticket[i]==0){charb;cout〈〈"该票已售完!"〈〈endl;cout〈〈"是不是排队候补?"〈〈endl;cout〈〈"a.是 b.否"〈〈endl;if(b=='a'){cout〈〈"请输入您的姓名:"〈〈endl;cin>>name2;cout〈〈"需要票量:"〈〈endl;cin>>need_number;cout〈〈"补替人姓名:"〈〈name2〈〈" 所需票量:"〈〈need_number〈〈endl;}if(b=='b'){cout〈〈"抱歉未能帮您订票!"〈〈endl;}}else{cout〈〈"请输入您的姓名:"〈〈endl;cin>>name1;cout〈〈"需要舱位品级:"〈〈endl;cin>>shipping_grade;

cout〈〈"订票人姓名:"〈〈namel〈〈" 舱位品级:"〈〈shipping_grade〈〈endl;remain_ticket[i]=remain_ticket[i]-1;其订票执行结果如图8所示。图8订票功能请输入终点站其订票执行结果如图8所示。图8订票功能请输入终点站1是否订购此票I请输入您的姓名=需要舱位等级:退票功能其主要代码为cout〈〈"";cout〈〈退票功能其主要代码为cout〈〈"";cout〈〈setw(4)〈〈"终点站:"〈〈destination[i];cout〈〈setw(4)〈〈"航班号:"〈〈flight_number[i];cout〈〈setw(4)〈〈"飞机号:"〈〈plane_number[i];cout〈〈setw(4)〈〈"礼拜:"〈〈week[i];cout〈〈setw(4)〈〈"乘客定额:"〈〈passenger_number[i];cout〈〈setw(4)〈〈"余票:"〈〈remain_ticket[i]〈〈endl;cout〈〈"是不是退订此票!"〈〈endl;cout〈〈"l.是 2.否"〈〈endl;cin>>a;if(a==1){cout〈〈"您退订成功!"〈〈endl;remain_ticket[i]=remain_ticket[i]+1;其录入执行结果如图3所示。58请输入终点站!裁点站艸航班号吃飞机号詔星期泊乘客定额汐余票汐是音追订此票!「是58请输入终点站!裁点站艸航班号吃飞机号詔星期泊乘客定额汐余票汐是音追订此票!「是2•否您退订成功!图9退票功能3、课程设计总结在这次的程序设计进程中,我收获颇多,对程序设计基础知识的掌握加倍扎实,同时提高了自己独立编程的能力、灵活运用知识点的能力。在该飞机订票管理系统中,主要运用了类的继承、构造函数和文件流等知识;功能实现则通过函数来完成。可是我的工作仍是有很多的不足,例如:在退票和订票功能实现询问排队人员时,碰到了大量困难和问题。例如,退票后余票增加,订票后余票减少,问问他人是不是排队等,然后通过老师的辅导和查阅书籍把问题一一解决。通过这次的课程设计,让咱们充分感到了独自设计一个程序是何等的困难,没有团队是不行的,和同窗们彼此探讨,彼此学习,彼此监督。增进自己,学会了合作,学会了运筹帷幄。在这个程序的设计进程中,我清楚的意识到自己的水平不足,C++的一些基础知识尚未取得运用,课程的知识学的有何等的不扎实,自己上机实际编程出现了很多的语法性错误,调试时电脑老是在报错,到最后虽然都改完了,也没有报错了,但不是自己独自修正的,因此,我意识到了我自己有太多的东西还不会,让我感觉到学习好C++是何等得重要。以后还会有很多的课程设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论