航空客运售票服务系统_第1页
航空客运售票服务系统_第2页
航空客运售票服务系统_第3页
航空客运售票服务系统_第4页
航空客运售票服务系统_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、 | HYPERLINK / 百度首页 HYPERLINK /v2/?login 登录 HYPERLINK /cashier/browse/vipcashier?dqStatCode=topnav_joinvip&cashier_code=topnav_joinvip VIP意见反馈 HYPERLINK /apps?fr=1011 下载客户端4/14/2019航空客运售票服务系统- 百度文库 HYPERLINK /?fr=nav 首页 HYPERLINK javascript:void(0); 分类 HYPERLINK javascript:void(0); 精品内容 HYPERLINK /w

2、enkuverify?from=1 申请认证 HYPERLINK javascript:void(0); 机构合作 HYPERLINK javascript:void(0); 频道专区 HYPERLINK /xtopic/wkback 百度智慧课堂 HYPERLINK /user/browse/vip/ 百度教育VIP HYPERLINK /?fr=crumbs 百度文库 HYPERLINK /?fr=crumbs HYPERLINK /pro/index 专业资料 HYPERLINK /pro/index HYPERLINK /list/63 IT/计算机3211培养运用数据结构的基本知识解

3、决实际问题的能力;2加深对数据结构基本知识的理解;3发挥各人的想象能力和分析能力,拓展思维空间;4掌握应用程序设计的基本方法;5培养书写课程设计报告的能力。具体见附录I,每位学生任选一题。考核办法:结合课程设计作品、课程设计报告和平时情况评定。评分标准:程序运行及答辩占 60,课程设计报告占 20%,平时占 20%。评分等级为优秀、 良好、 中等、 及格、不及格五个级别。实现难度不同的课程设计,给不同的分数。若完成项目指定功能,按对应的标准给分;若在完成指定功能的基础上,还添加扩展功能、有创意,给予一定的加分;若运行有错误,酌情减分。1、课程设计报告(实习报告)不少于3000字。格式参见附录I

4、I的模板。内容主要包括:(1)封面。(2)课程设计题目、摘要、关键词。(3)内容与要求(说明课程设计题目的具体内容、需实现的功能及要求)。(4)总体设计(说明算法总体思路及由哪几大功能模块组成、各功能模块的功能介绍)。(5)详细设计(说明各功能模块的具体实现算法-流程图、存储结构描述、及各功能模块的参数说明)。(6)程序测试(给出程序运行结果截图,需包括若干组测试用例以及实现对各种情况的测试)。(7)总结(说明调试过程中遇到的问题是如何解决的;对设计与实现的回顾/view/81ca2cf2ba0d4a7302763a2f.html1/34 4/14/2019航空客运售票服务系统- 百度文库讨论

5、与分析、改进设想;收获与体会等)。(8)参考文献(9)附录(包含源程序)2、程序提交完整的工程文件。在统一答辩完成后,每个教学班交一张光盘,包含所有学生的资料(课程设计报告与程序),每个学生的资料放在以“学号姓名”命名的文件夹中。/view/81ca2cf2ba0d4a7302763a2f.html2/34 4/14/2019航空客运售票服务系统- 百度文库附录I课程设计题目:【问题描述】航空客运订票的业务活动包括:查询航线、机票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。【具体要求】设民航售票处的计算机系统可以为客户提供下列各项服务:1查询航线:根据旅客提

6、出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额。2.承办订票业务:根据客户提出的要求(日期、航班号、订票数额)查询该航班票额情况,若尚有余额,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需要重新询问客户要求。若需要,可预约登记排队等候。3承办退票业务:根据客户提供的情况(日期、航班、退票数额),为客户办理退票手续,然后查询该航班是否有人预约登记,首先询问排在第一的客户,若所退票数能满足他的要求,则为他办理订票手续,否则依次询问其他排队预约的客户。【实现提示】每条航线应包含的信息有:终点站名、航班号、飞机号、飞行日期(星期几)、乘员定额、余票

7、额、已订票的客户名单(包括姓名、订票额、座位号)和预约登记的客户名单(包括日期、姓名、所需票额)。这最后两项显然是一个线性表和一个队列。为查找方便、已订票客户的线性表应按客户姓名有序,并且,为插入和删除方便,应以链表作存储结构。由于预约人数无法预料,队列也应以链表作存储结构。整个系统需汇总各条航线的情况登录在一张线性表上,由于航线基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序。每条航线是这张表上的一个记录,包含上述八个域,其中乘员名单域为指向乘员名单链表的头指针,预约登记客户名单域为分别指向队头和队尾的指针。【测试数据】自己设计,但报告上要求写出多批数据测试结果。【选做内容】当客户

8、订票要求不能满足时,系统可向客户提供到达同一目的地的其它航线情况。大家还可以充分发挥自己的想象力,增加你的系统的功能和其它服务项目。/view/81ca2cf2ba0d4a7302763a2f.html3/34 4/14/2019航空客运售票服务系统- 百度文库【问题描述】多级反馈队列调度算法是操作系统中 CPU 处理机调度算法之一,该算法既能使高优先级的进程(任务)得到响应又能使短进程(任务)迅速完成。UNIX操作系统便采取这种算法。试用 C 语言模拟某多级反馈队列调度算法。【具体要求】多级反馈队列调度算法描述:1、该调度算法设置四级就绪队列:前三级就绪队列采用时间片轮转法,时间片大小分别为

9、2、4 和8;最后一级就绪队列采用 FIFO 调度。2、任务在进入待调度的队列等待时,首先进入优先级最高的队列等待。3、首先调度优先级高的队列中的任务。若高优先级中队列中已没有调度的任务,则调度次优先级队列中的任务,依次类推。4、对于同一个队列中的各个任务,按照队列指定调度方法调度。每次任务调度执行后,若没有完成任务,就被降到下一个低优先级队列中。5、在低优先级的队列中的任务在运行时,又有新到达的任务,那么在运行完这个时间片后,CPU 马上分配给新到达的任务,即算法支持抢占式。6、为方便实现,时间以 1 为单位,用整数数据表示;且每个时间点,最多只有一个任务请求服务(即输入)。【实现提示】实现

10、一个队列数组(queuearray),该数组的每个元素都代表一个长度可变的队列,队列中的每个元素则代表一个任务 job,任务结构定义如下:typedef struct Jobint JobNum;/任务号int ArriveTime;/到达时间int Burst;/运行时间structJob *next;【测试数据】输入:任务号 到达时间 运行时间输出:任务号 响应时间 离开时间 周转时间具体数据自己设计,但报告上要求写出多批数据测试结果。【选做内容】可以考虑对各个任务赋予不同的优先级(通过输入确定),首先按优先级将各个任务放入四级队列中的某一个队列,然后按上述调度法调度。还可以考虑一个时间点

11、可能有多个任务同时请求服务(即输入)。大家可以充分发挥自己的想象力,增加你的系统功能。/view/81ca2cf2ba0d4a7302763a2f.html4/34 4/14/2019航空客运售票服务系统- 百度文库附录II课程设计报告参考模板:课程名称_ 数据结构与数据处理应用训练题目名称学生学院 计算机专业班级学号学生姓名指导教师2012 年 2 月16日/view/81ca2cf2ba0d4a7302763a2f.html5/34 4/14/2019航空客运售票服务系统- 百度文库本程序的 cpp中采用目录菜单型很简洁的描述了程序,让人很快明白,在ticket.中将问题全面化,并用指针,

12、结构体等完成增加航线,查询,订票,退票,修改航线,采用言简意赅的程序语句描述,更易理解,明白。航空客运订票的业务活动包括:查询航线、机票预订和办理退票等。根据实际情况运用 c语言设计的航空客运订票系统,更具有实际意义结构体 链表 队列 指针以下是说明文字,正式成文后请删除。1模板的使用方法(1)请不要删除任何具有格式的模版文字!(2)按照提示直接单击或者单击后执行“选择性粘贴”“无格式文本”就可以添加相应的内容!2. 格式说明题目用三号黑体加粗,摘要及关键词用五号楷体,各小标题用四号黑体,正文等用五号宋字。3. 摘要是课程设计报告内容的简短陈述,一般 200 字左右。关键词应为反映课程设计报告

13、内容的通用技术词汇,一般为 4 个左右。4课程设计报告的构成主要包括项目内容与要求、算法总体思路、存储结构描述、各模块的功能及详细算法思路、程序运行结果截图、总结、参考文献、附录(程序源代码)等内容。1 内容与要求设民航售票处的计算机系统可以为客户提供下列各项服务:1.查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额。2. 承办订票业务:根据客户提出的要求(日期、航班号、订票数额)查询该航班票额情况,若尚有余额,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需要重新询问客户要求。若需要,可预约登记排队等候。3承办退票业务:根

14、据客户提供的情况(日期、航班、退票数额),为客户办理退票手续,然后查询该航班是否有人预约登记,首先询问排在第一的客户,若所退票数能满足他的要求,则为他办理订票手续,否则依次询问其他排队预约的客户。【实现提示】/view/81ca2cf2ba0d4a7302763a2f.html6/34 4/14/2019航空客运售票服务系统- 百度文库每条航线应包含的信息有:终点站名、航班号、飞机号、飞行日期(星期几)、乘员定额、余票额、已订票的客户名单(包括姓名、订票额、座位号)和预约登记的客户名单(包括日期、姓名、所需票额)。这最后两项显然是一个线性表和一个队列。为查找方便、已订票客户的线性表应按客户姓名

15、有序,并且,为插入和删除方便,应以链表作存储结构。由于预约人数无法预料,队列也应以链表作存储结构。整个系统需汇总各条航线的情况登录在一张线性表上,由于航线基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序。每条航线是这张表上的一个记录,包含上述八个域,其中乘员名单域为指向乘员名单链表的头指针,预约登记客户名单域为分别指向队头和队尾的指针。2 总体设计增加航线查询信息修改航线删除航线订票退票增加航线清空系统退出航班号目的地在 cpp 文件中运用菜单形式将问题简化,运用 swtich 语句,令人更加容易明白。在 ticket.h 中,将已订票,未订票(候补),航班信息用三个结构体表示,结构

16、体里面包含的信息基本是以实际情况实现,在购买飞机票的时候要登记身份证号码,这里想要预定机票的都是要登记身份证号码和手机 号码,一共有 9 个子函数:void FlightInsert() /航班插入void FlightDelete() /删除航班void FlightLookup() /查询航班void FlightRework() /修改航线信息void FlightBuyticket() / 订票void FlightCancelticket() / 退票void Flightclean()/退出系统void Buyticket(PFlight q,int Ticket_Amount)

17、/ 买票void Buyreplace(PFlight q,int Ticket_Amount,int n) / 进入候补队列3 详细设计/view/81ca2cf2ba0d4a7302763a2f.html7/34 4/14/2019航空客运售票服务系统- 百度文库本程序的三个结构体如下:typedef struct Customer /已定票乘客信息char Name10; /姓名int Amount; /定票数char ID20;/待订票客户的身份证号char phoneno20; /待订票客户电话号码int Level; /舱位等级int SeatNum; /座位号char Fligh

18、tNum10; /所定航班号struct Customer *next;Customer;typedef struct Replace/ 替补乘客信息/ 姓名char Name10;int Amount;char ID20;/ 定票数/待订票客户的身份证号char phoneno20;int Level;/ 待订票客户电话号码/舱位等级char FlightNum10; /所定航班号struct Replace *next;Replace;typedef struct Flight /航线信息char Des10; /终点站名char FlightNum10; /航班号char PlaneNu

19、m10; /飞机号char Week10; /飞行周日int Ration; /乘员定额int FreeTicket; /剩余票数float Price3; /舱位等级的价格int ReplacePas; /候补乘客数Replace *ReplName; /该航班的候补乘客名单Customer *CustName; /该航班的已定票乘客名单struct Flight *next; /指示下一航线结点Flight,*PFlight;int Ration=0; /乘客总数Flight *head; /建立航线头结点Flight *rear; /建立航线尾结点Customer *Cusrear;/建

20、立指针/view/81ca2cf2ba0d4a7302763a2f.html8/34 4/14/2019航空客运售票服务系统- 百度文库Replace *Reprear;/建立指针本程序一共运用了 9 个子函数,如下所示:void FlightInsert() /航班插入(想要插入几班航线就插入几班航线,不用多次选择菜单,for 语句实现,p-FreeTicket=p-Ration;/余票=乘员定额p-ReplName=new Replace;/申请新的结点)void FlightDelete() /删除航班(根据航班号删除航班,while(p-next&strcmp(p-next-Fligh

21、tNum,FlightNum)/P-next-flightnum与flightnum 进行比较,如果相等就退出循环,q=p-next,再用 if 语句,进行判断,如果 q=null,那么没有这班航班,否则就删除该航班 q),void FlightLookup() /查询航班(有两种方法查询航班,根据航班号查询和目的地查询, while (p-next&strcmp(p-next-FlightNum,FlightNum)原理跟删除航班的方式差不多,q=p-next,如果 q 为 null,那么没有该航班,否则输出该航班的信息,终点站,航班号,飞机号,飞行日期,承载人数,价格(头等舱,普通舱,经济

22、舱)根据目的地查询方式跟航班号查询类似)void FlightRework()/ 修改航线信息,(输入想要修改的航班号,while(p-next&strcmp(p-next-FlightNum,FlightNum) ,q=p-next;如果 q 为 null,那么没有该航线,否则进入另外一个界面,进行选择修改航线信息)void FlightBuyticket() /订票,(订票一共有两种状况,订票成功,跟进入候补。当客户所需要的航班在,客户向本系统提供需要的张数,如果所需的张数小于余票的话,那么客户订票成功,则进入 void Buyticket(PFlight q,int Ticket_Amo

23、unt)/ 买票,函数,登记客户的姓名,身份证号码,手机号码及用舱的等级,同时会给出客户的座位号,该航线的余票也会减少;如果所需的张数大于余票的话,那么客户订票不成功,那么继续讯问是否进入候补状态,如果需要进入候补状态的话,则直接进入 voidBuyreplace(PFlight q,int Ticket_Amount,int n)函数/进入候补队列(候补票会再加上该客户所需的票,并且登记客户姓名,身份证号码,电话号码及用舱登记if(q-ReplName-next=NULL)Reprear=q-ReplName;Reprear-next=Rep2;Reprear=Rep2;Reprear-ne

24、xt=NULL;elseReprear-next=Rep2;Reprear=Rep2;Reprear-next=NULL;)void FlightCancelticket()/退票,在退票功能中,要先判定有没有该航班存在,如果不存在的话,那就输出不存在此航班。当判定该航班在的 时候,输入退票客户的姓名,在已订票的顾客中搜查是否存在这个人,如果不存在的话,那就输出并无 此人,如果这个存在的话,那么就输入该客户需要退票的张数,这里有三种情况,如果退票张数小于订票时的张数,那么该客户还在,余票增加退票数(如果增加后的余票满足候补名单所需的要求,那么输出该候补名单客户买票成功),如果相等的话,那么该客

25、户就不存在了,余票增加退/view/81ca2cf2ba0d4a7302763a2f.html9/34 4/14/2019航空客运售票服务系统- 百度文库票数(如果增加后的余票满足候补名单所需的要求,那么输出该候补名单客户买票成功),如果大于的话,那么就输出“输入错误!”。void Flightclean(),/系统清除()4 程序测试单击此处添加正文增加航线:和按航班号查询1.按目的地查询和修改航线信息,下面是举了修改航班号/view/81ca2cf2ba0d4a7302763a2f.html10/34 4/14/2019航空客运售票服务系统- 百度文库2 修改了飞行时间和删除航班以及预定车

26、票/view/81ca2cf2ba0d4a7302763a2f.html11/34 4/14/2019航空客运售票服务系统- 百度文库订票成功后,余票查询/view/81ca2cf2ba0d4a7302763a2f.html12/34 4/14/2019航空客运售票服务系统- 百度文库进入候补名单/view/81ca2cf2ba0d4a7302763a2f.html13/34 4/14/2019航空客运售票服务系统- 百度文库退票成功,候补订票成功/view/81ca2cf2ba0d4a7302763a2f.html14/34 4/14/2019航空客运售票服务系统- 百度文库余票查询/vie

27、w/81ca2cf2ba0d4a7302763a2f.html15/34 4/14/2019航空客运售票服务系统- 百度文库删除航行订票1.当余票足够时/view/81ca2cf2ba0d4a7302763a2f.html16/34 4/14/2019航空客运售票服务系统- 百度文库当余票不够时进入候补名单不进入候补名单/view/81ca2cf2ba0d4a7302763a2f.html17/34 4/14/2019航空客运售票服务系统- 百度文库5 总结参考文献/view/0f0af28771fe910ef12df86d.html附录Ticket.cpp#include #include#

28、include#include #include Ticket.hvoid FlightInsert(); /增加航线void FlightDelete();/删除航线void FlightLookup();/查询航线void FlightRework();/修改航线void FlightBuyticket();/预定飞机票void FlightCancelticket();/退票void Flightclean();/清除系统/*void MainMenu();*/返回主菜单*/主程序int main()/view/81ca2cf2ba0d4a7302763a2f.html18/34 4/1

29、4/2019航空客运售票服务系统- 百度文库Cusrear=new Customer;Reprear= new Replace;head=rear=new Flight;head-next=NULL;char i=0;while (i!=8)coutcout*杭州航空公司客运定票系统*endl;*1 、增加航线2 、查询航线3 、修改航线4 、删除航线5、预订机票6、退订机票7、清空系统8、退出系统*endl;*endl;*endl;*endl;coutcoutcoutcout*i;switch(i)case 1:FlightInsert();break;case 2:FlightLookup

30、();break;case 3:FlightRework();break;case 4:FlightDelete();break;case 5:FlightBuyticket();break;case 6:FlightCancelticket();break;case 7:Flightclean();break;case 8:break;default:couterrorn;break;return 0;Ticket.htypedefstructCustomer /已定票乘客信息charName10; /姓名intAmount; /定票数intback_piao;/退票数/view/81ca2

31、cf2ba0d4a7302763a2f.html19/34 4/14/2019航空客运售票服务系统- 百度文库char ID20;/待订票客户的身份证号char phoneno20;/待订票客户电话号码intLevel; /舱位等级intSeatNum; /座位号charFlightNum10; /所定航班号structCustomer*next;Customer;typedefstructReplace/替补乘客信息charName10;intAmount;char ID20;/姓名/定票数/待订票客户的身份证号char phoneno20;intLevel;/待订票客户电话号码/舱位等级c

32、harFlightNum10; /所定航班号structReplace*next;Replace;typedefstructFlight /航线信息charDes10; /终点站名charFlightNum10; /航班号charPlaneNum10; /飞机号charWeek10; /飞行周日intRation; /乘员定额intFreeTicket; /剩余票数floatPrice3; /舱位等级的价格intReplacePas; /候补乘客数Replace*ReplName; /该航班的候补乘客名单Customer*CustName; /该航班的已定票乘客名单structFlight*n

33、ext; /指示下一航线结点Flight,*PFlight;intRation=0; /乘客总数/view/81ca2cf2ba0d4a7302763a2f.html20/34 4/14/2019航空客运售票服务系统- 百度文库Flight*head; /建立航线头结点Flight*rear; /建立航线尾结点Customer*Cusrear;/建立指针Replace*Reprear;/建立指针voidFlightInsert() /航班插入Flight*p;intn,i;cout请输入插入的航班数: n;for(i=0;in;i+)p=newFlight;cout终点站名 |航班号 |飞机号

34、 |飞行周日 |乘员定额 |头等舱价格 |普通舱价格 |经济舱价格|:p-Desp-FlightNum p-PlaneNum p-Week p-Ration p-Price0 p-Price1 p-Price2;p-FreeTicket=p-Ration;/余票=乘员定额p-ReplName=newReplace;/申请新的结点p-CustName=newCustomer;p-CustName-next=NULL;p-ReplName-next=NULL;p-ReplacePas=0;rear-next=p;/队尾指针指向下一个rear=p;rear-next=NULL;voidFlightD

35、elete() /删除航班Flight*p,*q;charFlightNum10;p=head;inti=0;/view/81ca2cf2ba0d4a7302763a2f.html21/34 4/14/2019航空客运售票服务系统- 百度文库while(i!=1)cout请输入需要删除的航班号:FlightNum;while (p-next&strcmp(p-next-FlightNum,FlightNum)/P-next-flightnum与flightnum 进行比较,如果相等就退出循环p=p-next;q=p-next;if(q!=NULL)if(q-next=NULL)/当删除rear

36、 所指向的结点rear=p;p-next=p-next-next;deleteq;cout删除航班成功!endl;elsecout你所要删除的航班不存在endl;cout1、退出2、继续i;voidFlightLookup() /查询航班Flight*p,*q;charFlightNum10;charDes10;p=head;/view/81ca2cf2ba0d4a7302763a2f.html22/34 4/14/2019航空客运售票服务系统- 百度文库inti=0;cout*查 询 功能* endl;cout*cout*1. 按航班查询2. 按目的地查询* endl;*endl;cout请

37、选择:i;if(i=1)cout请输入需要查询的航班号:FlightNum;while(p-next&strcmp(p-next-FlightNum,FlightNum)p=p-next;q=p-next;if(q=NULL)cout对不起不存在此航班endl;elsecout航班号 :FlightNumendl;cout飞机号 :PlaneNumendl;cout目的地 :Desendl;cout飞行周日:Weekendl;cout成员定额 :Rationendl;cout剩余票数 :FreeTicketendl;/cout候补乘客数 :ReplacePasendl;cout头等舱价格:Pr

38、ice0endl;cout普通舱价格:Price1endl;cout经济舱价格:Price2endl;cout1、返回主菜单 2、继续i;/view/81ca2cf2ba0d4a7302763a2f.html23/34 4/14/2019航空客运售票服务系统- 百度文库if(i=2)cout请输入需要查询的终点站:Des;while(p-next&strcmp(p-next-Des,Des)p=p-next;q=p-next;if(q=NULL)cout对不起不存在此航班endl;elsecout航班号 :FlightNumendl;cout飞机号 :PlaneNumendl;cout目的地

39、:Desendl;cout飞行周日:Weekendl;cout成员定额 :Rationendl;cout剩余票数 :FreeTicketendl;/cout候补乘客数 :ReplacePasendl;cout头等舱价格:Price0endl;cout普通舱价格:Price1endl;cout经济舱价格:Price2endl;cout1、返回主菜单 2、继续i;voidFlightRework() /修改航线信息intCustomer_Number;/view/81ca2cf2ba0d4a7302763a2f.html24/34 4/14/2019航空客运售票服务系统- 百度文库Flight*p

40、,*q;charFlightNum10;chari=0;p=head;cout请输入需要修改的航班号:FlightNum;while(p-next&strcmp(p-next-FlightNum,FlightNum)p=p-next;q=p-next;if(q=NULL)cout对不起不存在此航班endl;elsewhile(i!=9)coutcoutcoutcoutcout*请输入需要修改的数据*endl;*1、航班号*3、目的地*5、成员定额2、飞机号*endl;4、飞行周日 *endl;6、头等舱价格*endl;*7、普通舱价格 8、经济舱价格*endl;coutcout*9、退出*en

41、dl;*i;switch(i)case1:cout请输入航班号:q-FlightNum;break;case2:cout请输入飞机号:q-PlaneNum;break;/view/81ca2cf2ba0d4a7302763a2f.html25/34 4/14/2019航空客运售票服务系统- 百度文库case3:cout请输入目的地:q-Des;break;case4:cout请输入飞行周日:q-Week;break;case5:cout请输入乘员定额:Ration-q-FreeTicket; /乘客的座位号是总定额-余票cinq-Ration;q-FreeTicket=q-Ration-Cus

42、tomer_Number;break;case6:cout请输入头等舱价格:q-Price0;break;case7:cout请输入普通舱价格:q-Price1;break;case8:cout请输入经济舱价格:q-Price2;break;case9:break;default:cout选择出错!n;break;voidFlightBuyticket()/订/ 票intTicket_Amount;/票数voidBuyticket(PFlight,int);订/ 票voidBuyreplace(PFlight,int,int)成;/为候补Flight*p,*q;/view/81ca2cf2ba

43、0d4a7302763a2f.html26/34 4/14/2019航空客运售票服务系统- 百度文库charDes10;/终点站inti=2;while(i!=1)cout请输入目的地:Des;p=head;while(p-next&strcmp(p-next-Des,Des)p=p-next;q=p-next;if(q=NULL)cout对不起不存在此航班endl;elsewhile(i!=1)cout输入需要够买的票数Ticket_Amount;while(Ticket_Amount=0)cout请输入一个非零数:Ticket_Amount;if(Ticket_AmountFreeTick

44、et)Buyticket(q,Ticket_Amount);elseintn;cout剩余票数小于定票数,是否需要列入候补名单?(1、是 2、/view/81ca2cf2ba0d4a7302763a2f.html27/34 4/14/2019航空客运售票服务系统- 百度文库否)n;Buyreplace(q,Ticket_Amount,n);cout1、返回主菜单 2、继续i;voidFlightCancelticket() /退票voidBuyticket(PFlight,int);Flight*p,*q;Customer*h,*j;charFlightNum6;charCustomer_Na

45、me10;intReplace1_Amount;/候补一个人的定票数intback_piao;inti;inta=0;while(i!=1)cout请输入需要退定的航班号:FlightNum;p=head;while(p-next&strcmp(p-next-FlightNum,FlightNum)p=p-next;q=p-next;if(q=NULL)/view/81ca2cf2ba0d4a7302763a2f.html28/34 4/14/2019航空客运售票服务系统- 百度文库cout对不起 不存在此航班!endl;elsecout请输入姓名:Customer_Name;h=q-Cust

46、Name;cout请输入需要退票的张数:next&strcmp(h-next-Name,Customer_Name)h=h-next;j=h-next;if(j=NULL)cout查无此人next=NULL)Cusrear=h;/当删除最后一个结点/h-next=h-next-next;if(j-back_piaoAmount)q-FreeTicket=q-FreeTicket+back_piao;/ 余票加上了退票数cout退票成功!Amount=j-Amount-j-back_piao;/所订的票减少了退票数张/view/81ca2cf2ba0d4a7302763a2f.html29/34

47、 4/14/2019航空客运售票服务系统- 百度文库if(back_piao=j-Amount)h-next=h-next-next;q-FreeTicket=q-FreeTicket+back_piao;/ 余票加上了退票数j-Amount=j-Amount-j-back_piao;cout删除成功,不存在此客户!back_piaoj-Amount)cout输入有错!endl;if(Replace1_AmountFreeTicket)/ 候补的所需的票数小于余票数Replace*rep;rep=q-ReplName-next;/rep 为候补名字的下一个Customer*Cus2;Cus2=newCustomer;/申请新的结点Cus2-SeatNum=q-Ration-q-FreeTicket+1;/ 座

温馨提示

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

最新文档

评论

0/150

提交评论