数据结构课程设计论文1528

数据结构课程设计论文1528

ID:6772883

大小:43.00 KB

页数:17页

时间:2018-01-25

数据结构课程设计论文1528_第1页
数据结构课程设计论文1528_第2页
数据结构课程设计论文1528_第3页
数据结构课程设计论文1528_第4页
数据结构课程设计论文1528_第5页
资源描述:

《数据结构课程设计论文1528》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、数据结构课程设计论文152823、书到用时方恨少,事非经过不知难——陆游  数据结构课程设计论文   计算机科学与技术专业(2)班36号杨晓光       航空客运订票系统1、问题描述  航空客运订票的业务活动包括:查询航线、客票预订和办理退票等设计一个航空客运订票系统,以使上述业务可以借助计算机完成  功能如下:a.查询航线:用户给出终点站名,系统输出航班班次、飞机号、时间及多余票额;b.承办订票业务;c.退票业务  2、需求分析1)每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定

2、额、余票量、已订票的客户名单(包括名字、订票量、舱位等级1、2、3)以及等候替补的客户名单;2)客户通过计算机进行订票时,先在终端输入终点站,执行查找操作,会出现 两种情况,一种是余票量为零,这时可询问客户是否要求候补,如要,则在 候补名单中增加一个客户名单,由客户输入自己的相关信息,否,则退出; 另一种是还有余票,客户应输入自己的名字,订票量和舱位等级,此时,      变量都会发生相应的变化操作完毕后,退出 3)退票时,根据客户提供的情况(日期、航班),为客户办理退票手续,然后查     询该航班是否有人候

3、补,首先询问排在第一位的客户,若退票能满足他的要求          ,则为他办理订票手续,否则依次询问其他排队候补的客户,并让队头出队,          再入队成为队尾如果退票不满足所有候补乘客的要求,则退出,同时,该航班的余票额发生变化 3假设分析 假设某小型航空公司开设了5条直达航线,每条航线的信息分为可变的和不可变的,其中定量有终点站站名、航班号、飞机号、飞行周日和乘员定额(分别为一等舱、二等舱、三等舱),变量则有余票量(分别为一等舱、二等舱、三等舱)、已订票的乘客名单(名字、订票量、等级)和候补乘客

4、当用户输入终点站时,系统进行查找,成功则输入相关信息,不成功则请再输入一次当用户进行订票或退票时,定量不变,系统对变量进行修改,操作成功后退出系统,否则,请用户再输入一次4数据流程图      五模块的划分由于订票系统涉及到三个基本操作,再加上数据的输入,可以将整个系统划分为四个模块,分别为数据的输入和保存,查询航线,订票以及退票在数据的输入和保存这个模块中,数据需要保存在一个文件里面,在查询、订票和退票模块中,对文件里的数据进行调用和处理,但文件里的数据保持不变在退票模块中,要考虑是否有候补乘客,如果有并且退

5、票满足他的要求,则要调用订票模块,进行订票操作 数据的输入和保存输入终点站,飞机号,航班号时间,票额  查询    订票退票七算法1)定义 #defineMAX5#defineN10#defineM10#defineOK1#defineERROR0#include#includetypedefintstatus;structseat{intfrist;intsecond;intthird;};//票的定义,分为一等、二等、三等structElemType{charname;

6、seatticket;};//ElemTypetypedefstructLNode{charname;seatticket;structLNode*next;}LNode,*passenger;typedefstructWQueue{passengerfront;passengerrear;};//WQueue,候补队列;typedefstructAL{charEPlace;//终点站intFNo;//航班号intPNo;//飞机号intTime;//时间seatTicket;//总票量,用结构体seatpas

7、sengerBPassenger;//已经订票的乘客,next存放已经订票的乘客链表的表地址seatRTicket;//剩余的票额passengerwait;//候补队列,next存放队头地址}AL,Airline[MAX];2)链表和队列的基本操作statusInitlink(passenger&Pa){Pa=(passenger)malloc(sizeof(LNode));if(!Pa)returnERROR;Pa->name=0;Pa->ticket.frist=0;Pa->ticket.second=0

8、;Pa->ticket.third=0;Pa->next=NULL;returnOK;}//Initlink,建立乘客链表statusInitQueue(WQueueQ){Q.front=Q.rear=(passenger)malloc(sizeof(LNode));if(!Q.front)returnERROR;Q.front->next=NULL;returnOK;}//InitQ

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。