航空客运订票系统

合集下载

软件工程实验报告实验二

软件工程实验报告实验二

软件工程实验报告实验二实实验报告课程名称软件工程实验项目实验二面向对象分析及面向对象设计实验仪器个人电脑系别___计算机科学与技术系____专业_____计算机科学与技术___组长姓名王海阔2010011187小组成员刘大伟_2010011195郑晓驰2010011192实验日期________2013-5-15_______成绩_______________________指导教师_田英爱1实验内容对航空客运订票系统,利用面向对象的软件工程思想和技术,对该系统进行分析。

2实验要求需要利用UML语言描述分析结果,完成系统的需求分析,并书写实验报告。

3实验工具与方法Micriosoftofficevisio2010画图工具Rationalroseenterpriseedition4实验结果系统名称:航空售票系统4.1根据选定系统,做出问题陈述,给出系统的用例图。

问题陈述:该航空客运售票系统能够实现旅客的订票、退票、查询余票、查询已经订票的旅客的信息、查询航班信息,旅客订票时提供的信息包括旅客姓名、身份证号、座位号、电话、航班号、起飞时间等,退票时提供的信息包括旅客姓名、身份证号、航班号、座位号、起飞时间等,查询余票时需要提供航班号以及飞机起飞时间,查询客户的信息需要提供旅客的姓名以及身份证号,查询航班信息需要提供航班号,下面是该系统的用例图注册收费系统收费退票旅客用户信息用户登录查询机票查询航班查询旅客信息查询现金支付POS机POS机支付自动售票机售票员订票注册成功4.2根据系统用例图,分别给出场景描述说明。

旅客买票前先注册,即在航空售票系统中录入自己的信息,注册成功之后,便可订票。

订票可以在柜台通过售票员直接订票,也可以在自动售票机上自己订票,当然都得先注册。

不管通过哪种方式订票都要缴费,收费系统会将旅客的现金或是通过POS机交的费用录入系统。

旅客退票时要先登录,在柜台或是在自动售票机输入自己的姓名等信息,然后系统会在旅客确认之后删除旅客的信息。

航空购票系统实训报告

航空购票系统实训报告

一、实训背景随着我国航空事业的快速发展,航空客运订票系统在航空公司的运营中发挥着越来越重要的作用。

为了更好地了解和掌握航空购票系统的设计、开发和运行,我们小组进行了为期一个月的航空购票系统实训。

二、实训目的1. 熟悉航空购票系统的基本原理和功能;2. 掌握航空购票系统的设计和开发方法;3. 提高团队合作能力和实践能力;4. 为今后的工作积累经验。

三、实训内容1. 系统需求分析在实训过程中,我们首先对航空购票系统进行了需求分析。

通过查阅相关资料和与航空公司的技术人员沟通,我们了解到航空购票系统主要包括以下功能:(1)航班信息查询:用户可以查询到航班号、起飞时间、到达时间、机型、票价等信息;(2)机票预订:用户可以选择航班、座位、票价等,进行机票预订;(3)订单管理:用户可以查看、修改、取消订单;(4)支付管理:用户可以选择在线支付或线下支付;(5)个人信息管理:用户可以查看、修改个人信息;(6)客服中心:用户可以咨询航班、订票等问题。

2. 系统设计根据需求分析,我们制定了以下系统设计:(1)系统架构:采用B/S架构,前端使用HTML、CSS、JavaScript等技术,后端使用Java语言和SSM框架(Spring、SpringMVC、MyBatis)进行开发;(2)数据库设计:使用MySQL数据库,存储航班信息、用户信息、订单信息等;(3)功能模块设计:将系统分为航班信息模块、机票预订模块、订单管理模块、支付管理模块、个人信息管理模块和客服中心模块。

3. 系统实现在系统实现过程中,我们遵循以下步骤:(1)前端开发:使用HTML、CSS、JavaScript等技术,完成航班信息查询、机票预订、订单管理、个人信息管理等功能模块的前端页面设计;(2)后端开发:使用Java语言和SSM框架,完成航班信息查询、机票预订、订单管理、支付管理、个人信息管理等功能模块的后端逻辑实现;(3)数据库设计:使用MySQL数据库,创建数据表,存储航班信息、用户信息、订单信息等;(4)系统集成:将前端页面和后端逻辑进行集成,实现整个系统的功能。

中国民航订座系统操作手册

中国民航订座系统操作手册

中国民航订座系统操作手册一、引言中国民航发展迅速,为了提升服务效率和乘客体验,订座系统成为了必备工具。

本操作手册旨在指导用户熟悉和操作中国民航订座系统,确保订座流程顺畅、准确。

二、系统登录1. 使用合法的用户名和密码登录订座系统。

2. 在登录界面输入准确的用户名和密码,点击“登录”按钮进入系统。

三、基本功能1. 查询航班信息a. 选择日期和出发地、目的地,点击“查询”按钮。

b. 系统将显示符合条件的航班列表,包括航班号、起降时间、剩余座位数等信息。

c. 用户可以根据需要选择合适的航班进行订座。

2. 订座a. 在航班列表中选择目标航班,点击“订座”按钮。

b. 输入旅客姓名和联系方式等必要信息。

c. 确认无误后,点击“确认订座”按钮提交订座申请。

3. 修改、取消订座a. 进入订座管理界面,在“我的订座”中找到对应的订座信息。

b. 若需修改订座信息,点击“修改”按钮进行修改。

c. 若需取消订座,点击“取消”按钮完成取消操作。

4. 余票查询a. 进入余票查询页面,选择日期和出发地、目的地。

b. 系统将显示符合条件的航班列表以及剩余座位数。

5. 退票、改签a. 进入退票、改签管理界面,选择相应的订座信息。

b. 若需退票,点击“退票”并按照退票规定办理退票手续。

c. 若需改签,点击“改签”并按照改签规定进行改签操作。

四、常用技巧以下是一些常用的技巧,可提高订座效率和准确性:1. 根据航班号直接查询航班信息,快速订座。

2. 选择多个航班进行对比,以获得最适合的航班方案。

3. 提前查询余票情况,避开座位紧张的时间段。

4. 注意航班的起降时间,在订座时合理安排行程。

五、注意事项1. 用户在操作订座系统时,应提供真实、准确的信息,确保订座的有效性。

2. 根据不同航空公司的规定,订座可能需要提供附加信息或补充材料。

3. 遵守航空公司的规定和要求,以确保顺利出行。

六、结语通过本操作手册的指导,用户可以轻松使用中国民航订座系统,实现高效、便捷的订座服务。

航空订票系统代码

航空订票系统代码

Airline.h#pragma once#include<string>using std::string;#include<iostream>using std::istream;using std::ostream;#include<string>using std::endl;using std::cout;using std::cin;#include"DataStructure.h"#include"Passenger.h"class AirLine;ostream &operator<<(ostream &output ,const AirLine& line);class AirLine{friend void InitAirLine(AirLine *line);friend ostream &operator<<(ostream &output,const AirLine& line); public:AirLine(void);~AirLine(void);string GetEndPoint();int GetSeatNum(int);int GetSeatRemain(int);void SetSeatRemain(int num,int whickWeek);string GetFlightNum(void);void InsertPassenger(Passenger& temp);bool IsFly(int whichWeek) const;void InsertAwait(Passenger& temp);bool DeletePassenger(Passenger&);int IfAwaitBook(int tiNum, int whichWeek);private:string endPoint;string flightNum;string airNum;bool week[8];int seatNum[8];int seatRemain[8];MyList<Passenger> pList;MyQueue<Passenger> pQueue;};Airline.cpp#include"AirLine.h"AirLine::AirLine(void){for(int i=0;i<8;i++)week[i]=false;}AirLine::~AirLine(void){}string AirLine::GetEndPoint(){return endPoint;}ostream &operator<<(ostream &output,const AirLine &line){output<<"终点站: "<<line.endPoint<<"\n\n"<<"航班号: "<<line.flightNum<<"\n\n"<<"飞机号: "<<line.airNum<<"\n\n"<<"剩余票数:\n";for(int i=1;i<8;i++)if(line.IsFly(i))output<<"周"<<i<<" "<<line.seatRemain[i]<<endl;string weekName[8]={" ","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sund ay"};output<<"飞行日:";for(int i=1;i<8;i++)if(line.week[i])output<<weekName[i]<<"\t";cout<<endl;return output;}int AirLine::GetSeatNum(int whichWeek){return seatNum[whichWeek];}int AirLine::GetSeatRemain(int whichWeek){return seatRemain[whichWeek];}void AirLine::SetSeatRemain(int num,int whichWeek) {seatRemain[whichWeek]-=num;}string AirLine::GetFlightNum(void){return flightNum;}void AirLine::InsertPassenger(Passenger& temp) {pList.InsertNode(temp);}bool AirLine::IsFly(int whichWeek) const{return week[whichWeek];}void AirLine::InsertAwait(Passenger& temp){pQueue.EnQueue(temp);}bool AirLine::DeletePassenger(Passenger& temp) {seatRemain[temp.GetWeek()]+=temp.GetTickets();return pList.DeleteNode(temp);}int AirLine::IfAwaitBook(int tiNum, int whichWeek) {if(pQueue.Empty())return 0;Passenger node,tnode;MyQueue<Passenger> tempQueue;while(!pQueue.Empty()){pQueue.DnQueue(node);if(node.GetTickets()<tiNum&&node.GetWeek()==whichWeek) break;tempQueue.EnQueue(node);}while(!tempQueue.Empty()){tempQueue.DnQueue(tnode);pQueue.EnQueue(tnode);}if(node.GetTickets()<tiNum&&node.GetWeek()==whichWeek) return node.GetTickets();elsereturn 0;}Passenger.h#pragma once#include<string>using std::string;enum TicketGrade{AA,BB,CC};class Passenger{public:~Passenger(void);Passenger(const string &passengerName=" ",int tick=0,int g=1,int w=1);bool operator==(Passenger & d);int GetTickets();int GetWeek();private:string name;int tickets;TicketGrade grade;int flightWeek;};Passenger.cpp#include"Passenger.h"Passenger::~Passenger(void){}Passenger::Passenger(const string &passengerName,int tick,int g,int w) {name=passengerName;tickets=tick;switch(g){case 1:grade=AA;break;case 2:grade=BB;break;case 3:grade=CC;break;default:break;}flightWeek=w;}bool Passenger::operator==(Passenger & d){if(d.tickets!=tickets)return false;if(!=name)return false;if(d.flightWeek!=flightWeek)return false;if(d.grade!=grade)return false;return true;//TODO: insert return statement here }int Passenger::GetTickets(){return tickets;}int Passenger::GetWeek(){return flightWeek;}DataStructure.h#include<cstdlib>//LQNode classtemplate<typename T>class MyList;template<typename T>class MyQueue;template<typename T>class LQNode{friend class MyList<T>;friend class MyQueue<T>;public:LQNode();LQNode(T);~LQNode();private:T data;LQNode<T> *next;};template<typename T> LQNode<T>::LQNode(){//data=T(0);next=NULL;}template<typename T> LQNode<T>::LQNode(T node) {data=node;next=NULL;}template<typename T> LQNode<T>::~LQNode(){}//MyList classtemplate<typename LT> class MyList{public:MyList();~MyList();void InsertNode(LT &);bool DeleteNode(LT &);private:LQNode<LT> *head;};template<typename LT> MyList<LT>::MyList(){head=new LQNode<LT>;head->next=NULL;}template<typename LT>MyList<LT>::~MyList(){}template<typename LT>void MyList<LT>::InsertNode(LT &temp){LQNode<LT> *node=new LQNode<LT>(temp);node->next=head->next;head->next=node;}template<typename LT>bool MyList<LT>::DeleteNode(LT &temp){LQNode<LT> *p,*q;p=head->next;q=head;while(p!=NULL){if(p->data==temp){q->next=p->next;free(p);return true;}q=p;p=p->next;}return false;}//MyQueue classtemplate<typename QT>class MyQueuepublic:MyQueue();~MyQueue();void EnQueue(QT &);void DnQueue(QT &);bool Empty();private:LQNode<QT> *front;LQNode<QT> *rear;};template<typename QT>MyQueue<QT>::MyQueue(){front=rear=new LQNode<QT>;}template<typename QT>MyQueue<QT>::~MyQueue(){}template<typename QT>void MyQueue<QT>::EnQueue(QT &temp){LQNode<QT> *node=new LQNode<QT>(temp);rear->next=node;node->next=NULL;rear=rear->next;}template<typename QT>void MyQueue<QT>::DnQueue(QT &temp){if(Empty())cout<<"对空"<<endl;elsetemp=front->next->data;return;}template<typename QT>bool MyQueue<QT>::Empty()return front->next==NULL;}Main.cpp#include"AirLine.h"#include<iostream>using std::cout;using std::cin;using std::endl;#include<iomanip>using std::setw;using std::setfill;void InitAirLine(AirLine *line);void InquireAirLine(AirLine* line);void BookTicket(AirLine *line);void ReturnTicket(AirLine *line);void IfAwait(AirLine &line,int tiNum,int whichWeek);void TransactBookTicket(AirLine &line,int tiNum,int whichWeek);void IfBookTicket(AirLine *line,string fiNum,int tiNum,int whichWeek); bool IsQuit();const int size=7;const int maxSeatNum=120;int main(){AirLine line[size];int select;InitAirLine(line);bool flag=false;while(!flag){cout<<"-------------------------------------------------------------------"<<endl;cout<<" 航空客运订票系统"<<endl;cout<<" 1 查询航线"<<endl<<" 2 订票业务"<<endl<<" 3 退票业务"<<endl;cout<<"-------------------------------------------------------------------"<<endl;cin>>select;while(cin.fail()||select<1||select>3){cout<<"输入错误,重新输入"<<endl;cin.clear();cin.ignore();cin>>select;}switch(select){case 1:InquireAirLine(line);break;case 2:BookTicket(line);break;case 3:ReturnTicket(line);break;default:cout<<"error";break;}system("pause");flag=IsQuit();system("cls");}return 0;}bool IsQuit(){char change;cout<<"是否退出该系统Y/y是N/n否"<<endl;while(true){cin>>change;switch(change){case'Y':case'y':return true;break;case'n':case'N':return false;break;default:cout<<"输入错误,重新输入"<<endl;break;}}return true;}void InquireAirLine(AirLine *line){string inquirePoint;cout<<"输入终点名:"<<endl;cin>>inquirePoint;for(int i=0;i<size;i++)if(line[i].GetEndPoint()==inquirePoint){cout<<line[i];return;}cout<<"对不起,没有到达该地的航班"<<endl; }void BookTicket(AirLine *line){int tiNum;int whichWeek;string fiNum;cout<<"输入航班号:"<<endl;cin>>fiNum;for(int i=0;i<size;i++)if(line[i].GetFlightNum()==fiNum){cout<<line[i];cout<<"输入订票额:"<<endl;cin>>tiNum;while(cin.fail()){cout<<"输入错误,重新输入"<<endl;cin.clear();cin.ignore();cin>>tiNum;}if(tiNum>maxSeatNum){cout<<"对不起,本公司暂时没有这么大的客机,请分开订票"<<endl;return;}cout<<"输入订票时间:"<<endl;cout<<"1星期一、星期二..."<<endl;cin>>whichWeek;while(cin.fail()||whichWeek>8||whichWeek<1||!line[i].IsFly(whichW eek)){cout<<"输入错误,重新输入"<<endl;cin.clear();cin.ignore();cin>>whichWeek;}if(tiNum>line[i].GetSeatRemain(whichWeek))IfAwait(line[i],tiNum,whichWeek);elseTransactBookTicket(line[i],tiNum,whichWeek);return;}cout<<"对不起,没有到达该地的航班"<<endl;}void ReturnTicket(AirLine *line){cout<<"为您办理退票业务:"<<endl;string fiNum;int whichWeek;int tiNum;int i;string name;cout<<"输入名字"<<endl;cin>>name;cout<<"输入航班号:"<<endl;cin>>fiNum;for(i=0;i<size;i++)if(line[i].GetFlightNum()==fiNum)break;if(i==size){cout<<"无此航班,请核对后输入"<<endl;return;}cout<<"输入订票时间:"<<endl;cout<<"1星期一、星期二..."<<endl;cin>>whichWeek;while(cin.fail()||whichWeek>8||whichWeek<1||!line[i].IsFly(whichW eek)){cout<<"输入错误,重新输入"<<endl;cin.clear();cin.ignore();cin>>whichWeek;}cout<<"输入订票额:"<<endl;cin>>tiNum;while(cin.fail()){cout<<"输入错误,重新输入"<<endl;cin.clear();cin.ignore();cin>>tiNum;}Passenger temp(name,tiNum,1,whichWeek);if(line[i].DeletePassenger(temp)==true){cout<<"办理退票完毕,谢谢合作"<<endl;IfBookTicket(line,fiNum,tiNum,whichWeek);}elsecout<<"您没有订票或输入信息错误,请核实后办理"<<endl; }void IfAwait(AirLine &line,int tiNum,int whichWeek){cout<<"空座不够,是否排队候补?Y/y是N/n否"<<endl;char change;bool flags=true;while(flags){cin>>change;switch(change){case'Y':case'y':{flags=false;Passenger temp(" ",tiNum,1,whichWeek);line.InsertAwait(temp);cout<<"已为您登记排队候补,请耐心等候"<<endl;}break;case'n':case'N':flags=false;cout<<"谢谢合作,再见。

民航售票系统总结与归纳

民航售票系统总结与归纳

民航售票系统总结与归纳随着社会的发展和科技的进步,民航售票系统的应用已经成为现代航空业务运作的重要组成部分。

通过对民航售票系统的总结与归纳,可以更好地了解其功能和作用,为航空公司和旅客提供高效、便捷的服务。

本文将对民航售票系统进行综述,包括其定义、特点、优势以及未来的发展方向。

一、民航售票系统的定义与特点民航售票系统,简称为ATRS(Airline Ticket Reservation System),是指航空公司为旅客提供机票预订、购票、退票等服务的一种电子化系统。

它通过计算机网络和数据库技术,实现了航班信息、客票信息和支付信息的集中管理和实时更新,为旅客提供了更加便捷的购票方式。

民航售票系统具有以下特点:1. 实时性:民航售票系统可以及时更新航班信息和座位预订情况,旅客可以随时查询到最新的航班信息和机票余量。

2. 自动化:通过民航售票系统,旅客可以自主选择航班、座位、乘客信息等,实现自动化的预订和购票流程,节省人力成本。

3. 一体化:民航售票系统通常与其他航空管理系统(如运输管理系统、机场管理系统)相互关联,形成一体化的航空业务运作体系。

4. 多渠道销售:除了传统的实体售票点,民航售票系统还支持在线售票、手机客户端购票等多种渠道,方便旅客随时随地购票。

5. 安全性:民航售票系统采用了严格的数据加密和身份验证措施,确保旅客个人信息和支付信息的安全。

二、民航售票系统的优势民航售票系统的应用给航空公司和旅客带来了许多优势。

1. 提高效率:传统的售票方式需要人工操作,效率低下。

而民航售票系统实现了自助购票和在线支付,大大提高了航空公司的工作效率。

2. 降低成本:民航售票系统的自动化特点减少了航空公司的人力成本,同时也减少了纸质票据和行程单的使用成本。

3. 增强服务体验:旅客可以通过民航售票系统自主选择航班、座位,并在线支付,提升了购票的便利性和体验感。

4. 实时更新:民航售票系统与航空公司的航班管理系统相互关联,在航班变动时可以及时更新,减少因航班取消或延误而给旅客带来的困扰。

订票系统文档

订票系统文档

订票系统介绍订票系统是一种用于预订机票、火车票、电影票等各种票务的系统。

随着互联网和移动互联网的快速发展,订票系统已经成为现代人生活中不可或缺的一部分。

本文将介绍订票系统的功能以及使用方法。

功能1.用户注册和登录:订票系统提供用户注册和登录功能,用户可以通过自己的账号和密码进行登录,从而方便地进行票务预订。

2.票务查询:订票系统提供了全面的票务查询功能,用户可以根据目的地、时间、票价等条件对票务进行筛选,并查看相关的票务信息。

2.订票:一旦用户找到心仪的票务,可以通过订票系统直接进行订票。

用户需要选择座位、支付方式等相关信息,并填写必要的个人信息,完成订票过程。

3.订单管理:订票系统会保留用户的订票记录,用户可以通过订单管理功能查看自己的订单,了解订单的状态、支付情况等信息。

4.支付:订票系统支持多种支付方式,用户可以选择适合自己的支付方式进行付款,完成订票流程。

5.退票:用户可以在一定的时间范围内进行退票申请,订票系统会根据退票政策进行处理,并将相应的款项退还给用户。

6.售后服务:订票系统提供售后服务,用户可以通过系统客服渠道与客服人员联系,解决遇到的问题或提出意见和建议。

使用方法以下是使用订票系统的基本步骤:1.用户注册:用户需要点击系统的注册按钮,填写相关信息(如用户名、密码、手机号码等),完成注册过程。

也可以选择第三方账号快速注册。

2.用户登录:注册成功后,用户可以使用注册时填写的用户名和密码进行登录,进入订票系统的主界面。

3.票务查询:用户可以在主界面的搜索框中输入相关的查询条件(如目的地、时间、票价等),然后点击搜索按钮进行查询。

系统会根据用户的查询条件返回相应的票务信息。

4.订票:在查询结果中找到心仪的票务后,用户可以点击选择座位并填写必要的个人信息(如姓名、身份证号码等),然后选择支付方式付款。

5.订单管理:用户可以在系统的订单管理页面查看自己的订单,了解订单的状态和支付情况。

数据结构:航空客运订票系统

数据结构:航空客运订票系统

课程设计报告课程名称:数据结构设计题目:航空客运订票系统院系:班级:设计者:学号:指导教师:课程设计报告一、题目分析主要功能包括:1、录入:可以录入航班情况(如:输入航班号,飞机编号,查询起降时间,起飞抵达城市,剩余的票数)。

2、查询:可以查询某个航线的情况(如:输入航班号,飞机编号,查询起降时间,起飞抵达城市,剩余的票数);可以输入降落城市及航班号,查询飞机航班情况。

3、订票:根据客户要求(航班号、订票数量)查询该航班的余票数情况,若有余票,则可以订票;若余票数不足,则需要重新询问客户要求,否则不能完成订票。

4、退票:可退票,根据客户的姓名,订票数量查询是否为真实信息,为客户办理退票。

5、退出系统。

二、总体设计拿到课程设计题目后,经过仔细的研究,还是决定做航空客运订票系统,它可以使自己很好的巩固在数据结构当中所学到的知识以及各算法,做到学以致用,并在运用的基础上,进一步去创新。

1、主程序流程图及其说明主程序的流程图如下图所示:利用switch语句,用户只需根据自己的需要,输入相应的命令即可达到效果。

例如,若需要查询航班信息时,则输入2;需要为客户预定机票时,则输入4;若需要退出系统,则输入5即可。

2、子程序流程图及其说明⑴、录入航班信息的流程图及其说明:主要功能是将新的航班信息写入新建链表中,然后把新链表与储存航班的链表合并,得到新的航班信息,实现对新航班的增加。

录入航班信息的流程图如下图所示:⑵、查询航班信息流程图及其说明:先输入所要查找的航班,可通过降落城市查询或根据航班号查询。

然后判断该航班是否存在,若存在,则输出相关的航班信息;若不存在,则提示该航班不存在。

查询航班信息的流程图如下图所示:⑶、订票、退票流程图及其说明:订票说明:先输入降落城市,找到该航班并显示该航班信息,若找不到则提示不存在该航班。

再通过需要订票的数量来判断余票量是否足够。

若足够则录入客户姓名,完成订票;若余票不足,则提示是否要取消并重新订票。

数据结构课程设计航空订票系统

数据结构课程设计航空订票系统

航空客运订票系统的设计与实现一、设计目的:设计一个航班订票系统,提高对信息管理、信息查找和排序算法的应用能力。

二、问题的描述:航空客运订票的业务包括查询航线和客票预定的信、客票预定和办理退票等,设计一个程序以使上述任务借助计算机完成。

三、数据结构的设计://航线结构struct airline{char cityname[15]; //终点站char airnum[15]; //航班号char planenum[15]; //飞机号char qjtime[15]; //起降时间int price; //价格int disc; //折扣int num; //总座位数int rempla; //剩余位置(票数)linklist *order;linkqueue wait;}line;//定义链表队列typedef struct wait{char name[6];int ordnum;struct wait *next;} qnode,*qptr;//无票时其余等候买票队列typedef struct listqueue{qptr front; //对头qptr rear; //队尾}linkqueue;typedef struct order{char name[15]; //客户姓名char crenum[15]; //证件号char airnum[15]; //航班号char planenum[15]; //飞机号int ordnum; //订票数量int rempla; //剩余位置int num; //总座位数char qjtime[15]; //起降时间struct order *next;}linklist;建立了航班的终点站,航班号,飞机号,起降时间,价格,折扣,总座位数,剩余位置,指向客户信息truct order指针,等候买票的队列的结构体信息。

建立了客户的客户姓名,证件号,航班号,飞机号,订票数量,剩余位置,总座位数,起降时间,链接下一位的指针的结构体信息。

中国民航订座系统操作手册

中国民航订座系统操作手册

中国民航订座系统操作手册中国民航的发展在近年来取得了长足的进步,航空业也逐渐成为人们出行的重要选择。

作为航空公司的重要一环,民航订座系统的操作十分关键。

在这里,我将为大家介绍一份中国民航订座系统的操作手册,希望能够帮助大家更好地了解和使用这一系统。

首先,在使用民航订座系统之前,我们需要了解一些基本的操作步骤。

首先,打开民航官方网站或者相关应用程序,找到订座系统入口。

其次,选择出发地和目的地城市,输入出行日期和航班时间。

接着,系统将显示符合条件的航班列表,根据自己的需求选择合适的航班。

最后,填写乘客信息并支付机票费用,完成预订。

在选择航班时,我们需要注意一些细节。

首先,要根据个人出行需求选择合适的舱位类型,如经济舱、商务舱或头等舱。

其次,要注意航班的起降时间和中转时间,确保在出行计划中留有充足的时间。

此外,还需要关注航班的准点率和航空公司的服务质量,选择信誉良好的航空公司。

在填写乘客信息时,我们需要确保信息的准确性和完整性。

首先,要填写与乘机人身份证件一致的姓名和证件号码,以确保乘机顺利。

其次,要填写联系人信息,以便紧急情况下能够及时联系到乘客。

最后,要选择座位偏好和餐食需求,提前告知航空公司,以便他们为您提供更好的服务。

在支付机票费用时,我们需要注意保护个人信息和选择安全支付方式。

首先,要选择正规渠道支付,避免使用不明来源的支付平台。

其次,要确保支付页面的安全性,避免泄露个人银行账号和密码。

最后,要保存好支付凭证和订单信息,以备日后查询和退改签。

总的来说,中国民航订座系统的操作并不复杂,只要掌握好基本步骤和注意事项,就能够轻松完成订票。

希望这份操作手册能够帮助大家更好地使用民航订座系统,享受舒适便捷的出行体验。

祝大家旅途愉快!。

民航订座系统实验报告(3篇)

民航订座系统实验报告(3篇)

第1篇一、实验目的通过本次实验,了解民航订座系统的基本操作流程,掌握系统的主要功能,熟悉航班信息查询、旅客订座、电子客票等业务操作,提高实际操作能力,为将来从事民航服务行业打下基础。

二、实验内容1. 民航订座系统概述2. 系统登录与界面介绍3. 航班信息查询4. 旅客订座5. 电子客票6. 系统退出三、实验步骤1. 系统登录与界面介绍(1)打开民航订座系统,输入用户名和密码进行登录。

(2)登录成功后,进入系统主界面,界面主要包括菜单栏、功能按钮、航班信息显示区域、旅客信息输入区域等。

2. 航班信息查询(1)在菜单栏选择“航班查询”功能。

(2)输入查询条件,如出发城市、到达城市、出发日期、航班号等。

(3)点击“查询”按钮,系统将显示符合条件的航班信息。

(4)查看航班信息,包括航班号、出发时间、到达时间、机型、舱位等级、票价等。

3. 旅客订座(1)在菜单栏选择“旅客订座”功能。

(2)输入旅客信息,如姓名、性别、身份证号码、联系方式等。

(3)选择航班信息,包括航班号、出发日期、舱位等级等。

(4)点击“提交”按钮,系统将显示订座成功信息。

4. 电子客票(1)在菜单栏选择“电子客票”功能。

(2)输入旅客信息,如姓名、身份证号码等。

(3)选择航班信息,包括航班号、出发日期、舱位等级等。

(4)点击“生成电子客票”按钮,系统将生成电子客票,并显示在界面上。

5. 系统退出(1)完成实验操作后,点击菜单栏的“退出”按钮。

(2)系统提示是否退出,点击“确定”按钮,系统将退出实验环境。

四、实验结果与分析1. 实验结果通过本次实验,成功掌握了民航订座系统的基本操作流程,包括航班信息查询、旅客订座、电子客票等业务操作。

2. 实验分析(1)实验过程中,遇到的问题及解决方法:a. 在输入旅客信息时,身份证号码格式错误,导致无法提交。

b. 在查询航班信息时,未输入出发城市或到达城市,导致查询结果为空。

c. 在生成电子客票时,未选择舱位等级,导致无法生成电子客票。

中国民航订座系统操作手册

中国民航订座系统操作手册

中国民航订座系统操作手册中国民航订座系统操作手册目录1. 引言2. 登录与注册2.1. 注册新账户2.2. 登录现有账户3. 航班查询与预订3.1. 单程和往返航班查询3.2. 舱位选择和预订3.3. 旅行日期选择3.4. 乘客信息输入3.5. 订单确认和支付4. 机票管理4.1. 航班变更和退票4.2. 行李规定查询5. 其他功能5.1. 会员服务5.2. 报销凭证生成5.3. 旅客保险购买6. 常见问题解答7. 结束语1. 引言欢迎使用中国民航订座系统操作手册。

本手册将详细介绍如何利用该系统进行航班查询、预订和机票管理等操作,以及其他功能的使用方法和常见问题解答。

请按照手册的指引一步一步操作,以便顺利完成所需任务。

2. 登录与注册2.1. 注册新账户a. 打开中国民航订座系统网站,点击注册按钮。

b. 输入个人信息,包括姓名、手机号码、电子邮箱等,并创建密码。

c. 验证码校验后,点击确认提交注册申请。

d. 系统将发送确认邮件至注册时提供的邮箱,点击确认邮件中的链接完成注册。

2.2. 登录现有账户a. 打开中国民航订座系统网站,点击登录按钮。

b. 输入注册时使用的手机号码或邮箱,以及密码。

c. 点击登录按钮完成登录。

3. 航班查询与预订3.1. 单程和往返航班查询a. 在主页的航班查询栏中选择单程或往返。

b. 输入出发地和目的地城市名或三字码,并选择出发日期。

c. 点击查询按钮,系统将列出符合条件的航班信息。

3.2. 舱位选择和预订a. 在航班列表中选择合适的航班。

b. 在舱位列表中选择希望预订的舱位类型和价格。

c. 点击预订按钮,进入乘客信息输入页面。

3.3. 旅行日期选择a. 在航班查询结果页面中,点击日期选择器。

b. 选择合适的出发日期。

c. 点击查询按钮,系统将显示该日期的航班信息。

3.4. 乘客信息输入a. 根据系统提示,输入乘客的姓名、证件号码、性别等基本信息。

b. 根据需要选择座位要求、餐食要求等其他选项。

旅客服务系统名词解释

旅客服务系统名词解释

旅客服务系统名词解释旅客服务系统,又称为旅客信息系统(Passenger Service System,缩写为PSS),是指航空公司或铁路公司等运输公司用于管理旅客信息和提供旅客服务的计算机系统。

该系统集成了多个模块和功能,包括预订、登机、行李跟踪、票务退改签、乘客信息管理等。

以下是一些与旅客服务系统相关的名词解释:1. 预订系统(Reservation System):旅客可以通过此系统预订机票或车票,并进行座位选择、支付等操作。

2. 登机系统(Check-In System):用于检查旅客的登机信息和办理登机手续,提供电子登机牌和行李标签等。

3. 行李跟踪系统(Baggage Tracking System):负责追踪旅客托运的行李的位置,确保行李的准确运送和及时返还。

4. 退改签系统(Ticketing System):允许旅客退改机票或车票,并处理相关费用和手续。

5. 出票系统(Ticket Issuance System):用于生成和打印机票或车票,包括行程单、电子票等。

6. 乘客信息管理系统(Passenger Information Management System):存储和管理旅客的个人信息、机票历史记录、优惠券等数据,以便进行个性化服务和相应的市场活动。

7. 舱位管理系统(Inventory Management System):控制和管理各航班或列车的座位分配和价格调整,以实现舱位的最大利用和优化收益。

8. 售后服务系统(After-sales Service System):解决旅客在旅途中遇到的问题和投诉,提供客户服务和售后支持。

旅客服务系统的目标是提高旅客满意度,增强运输公司的竞争力,实现高效、便捷和安全的旅行体验。

电子行业南航电子客票系统

电子行业南航电子客票系统

电子行业南航电子客票系统1. 引言南航电子客票系统是南方航空公司为提高运营效率和服务质量而开发的一套系统。

该系统通过电子方式替代传统的纸质客票,实现了在线购票、订票、改签、退票等功能,方便了乘客的操作,并提升了航空公司的运营效率。

2. 功能概述南航电子客票系统主要包含以下功能模块: -在线购票:乘客可以通过系统在电脑或手机上进行在线购票,选择航班、座位等信息。

- 订票管理:系统能够对乘客的订票信息进行管理和处理,包括座位分配、票价计算等。

- 改签服务:乘客可以通过电子客票系统进行航班改签操作,选择合适的航班和时间。

- 退票服务:乘客在需要退票时,可以通过系统进行退票操作,系统会自动计算退票费用并进行退款。

- 查询服务:乘客可以随时查询自己的航班、座位、购票记录等信息。

3. 系统架构南航电子客票系统采用客户端-服务器架构,包含以下组件: - 客户端:乘客通过手机App或Web浏览器访问系统,进行购票、订票、改签等操作。

- 服务器:负责处理乘客的请求,并与航空公司内部系统进行交互,如航班查询、座位分配等。

- 数据库:存储乘客的个人信息、航班信息、购票记录等数据。

4. 系统流程以下为南航电子客票系统的基本流程: 1. 乘客通过手机App或Web浏览器访问系统,并输入账号和密码进行登录。

2. 登录成功后,乘客可以选择航班、座位等信息进行购票。

3. 系统根据乘客选择的航班和座位进行票价计算,并生成电子客票。

4. 乘客支付购票费用后,系统会将电子客票发送至乘客的手机或电子邮箱。

5. 乘客可以随时通过系统查询自己的购票记录、航班信息等。

6. 若乘客需要改签或退票,可以通过系统进行相应操作,并按照规定支付费用。

7. 改签或退票成功后,系统会自动更新相应的航班信息和乘客购票记录。

5. 技术实现南航电子客票系统采用以下技术实现: - 前端开发:采用HTML、CSS、JavaScript等技术实现用户界面和交互功能。

数据结构课程设计题目(最终版)-2012

数据结构课程设计题目(最终版)-2012

数据结构课程设计题目1、医务室模拟。

问题描述:假设只有一位医生,在一段时间内随机地来几位病人;假设病人到达的时间间隔为0~14分钟之间的某个随机值,每个病人所需处理时间为1~9分钟之间的某个随机值。

试用队列结构进行模拟。

实现要求:要求输出医生的总等待时间和病人的平均等待时间。

程序设计思路:计算机模拟事件处理时,程序按模拟环境中的事件出现顺序逐一处理,在本程序中体现为医生逐个为到达病人看病。

当一个病人就诊完毕而下一位还未到达时,时间立即推进为下一位病人服务,中间时间为医生空闲时间。

当一个病人还未结束之前,另有一位病人到达,则这些病人应依次排队,等候就诊。

2、招聘模拟问题描述:某集团公司为发展生产向社会公开招聘m个工种的工作人员,每个工种各有不同的编号(0,1,2,…,m-1)和计划招聘人数,参加招聘的人数有n个(编号为0,1,2,。

,n-1)。

每位应聘者可以申报两个工种,并参加公司组织的考试。

公司将按应聘者的成绩,从高到低的顺序排队录取。

公司的录取原则是:从高分到低分依次对每位应聘者按其第一志愿录取;当不能按第一志愿录取时,便将他的成绩扣去5分后,重新排队,并按其志愿考虑录取。

程序为每个工种保留一个录取者的有序队列。

录取处理循环直至招聘额满,或已对全部应聘者都做了录用处理。

实现要求:要求程序输出每个工种录用者的信息(编号、成绩),以及落选者的信息(编号、成绩)。

3、组织机构问题问题描述:以青岛理工大学为例,实现对我校组织结构的管理。

要求把我校的组织结构以树型结构存储,实现要求:(1)树中每个结点保存部门名称;(2)假定处级部门(含院系)在树中第二层,科级部门在第三层(即最后一层),软件应该能计算出处级部门有几个,有哪几个?(3)软件可以查询某部门下面的具体编制?4、最少换车次数问题问题描述:设某城市有n个车站,并有m条公交线路连接这些车站。

设这些公交车站都是单向的,这n个车站被顺序编号为0~n-1。

航空客运订票系统实习报告

航空客运订票系统实习报告

实习报告一、实习背景及目的随着我国经济的快速发展,人民生活水平的不断提高,航空运输需求日益增长。

为了提高航空客运订票效率,降低运营成本,提升客户满意度,航空公司及相关部门积极引入先进的信息化技术,开发航空客运订票系统。

本次实习旨在了解航空客运订票系统的业务流程、掌握系统功能及操作方法,提高自身业务能力和实际操作技能。

二、实习内容与过程1. 实习前的准备工作在实习开始前,我认真学习了航空客运订票系统的相关理论知识,了解了航空客运订票系统的起源、发展及其在现代航空运输行业中的重要作用。

同时,我还熟悉了系统的操作界面、功能模块以及基本操作流程。

2. 实习过程中的主要工作(1)航线查询:根据旅客提出的终点站名,输出航班号、飞机号、星期几飞行,最近一天航班的日期和余票额等信息。

(2)订票业务:根据客户提出的要求(航班号、订票数额),查询该航班票额情况。

若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求。

若需要,可登记排队候补。

(3)退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续。

然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。

3. 实习中遇到的问题及解决方法在实习过程中,我遇到了一些问题,如系统操作不熟悉、业务流程不清晰等。

针对这些问题,我通过请教同事、查阅资料、总结经验等方式,逐步掌握了系统的操作方法,明确了业务流程。

同时,我还积极参与培训,提高自己的业务素质。

三、实习收获与反思通过本次实习,我掌握了航空客运订票系统的业务流程、功能模块及操作方法,提高了自己的业务能力和实际操作技能。

同时,我深刻认识到航空客运订票系统在提高航空公司运营效率、降低运营成本、提升客户满意度方面的重要作用。

反思实习过程,我认为自己在系统操作速度、业务熟悉程度、沟通协调能力等方面仍有待提高。

航空订票系统操作手册旅客使用分册

航空订票系统操作手册旅客使用分册

航空订票系统操作手册旅客使用分册航空订票系统操作手册 - 旅客使用分册本操作手册介绍了如何使用航空订票系统进行机票预订、查询和修改等操作。

以下是详细步骤和注意事项:1. 注册账号在使用航空订票系统之前,您需要先注册一个账号。

请按照以下步骤进行注册:2. 点击“注册”按钮,填写您的个人信息,包括姓名、电子邮箱、联系电话等。

3. 设置一个安全的密码,并确认密码无误。

4. 验证您的账号,按照系统提示完成验证流程。

2. 登录账号如果您已经注册了账号,可以通过以下步骤登录账号:1. 打开航空订票系统网页或打开手机应用。

2. 点击“登录”按钮,在弹出的登录页面中输入您的邮箱和密码。

3. 点击“登录”或确认按钮,等待系统验证账号信息。

3. 预订机票一旦您成功登录账号,可以按照以下步骤预订机票:1. 在首页或导航栏中点击“预订机票”或类似选项。

2. 选择出发地和目的地,设置出发日期和返回日期(如果适用)。

3. 输入乘客人数和票价预算(如果适用),点击“搜索”按钮。

4. 在搜索结果页面中选择适合的航班和座位类型。

5. 填写乘客信息,包括姓名、身份证号码、联系方式等。

6. 选择支付方式,并完成支付流程。

4. 查询订单如果您需要查询已预订的机票订单,可以按照以下步骤进行:1. 在首页或导航栏中点击“查询订单”或类似选项。

2. 输入订单号或相关的乘客信息,点击“搜索”按钮。

3. 在搜索结果页面中查看订单详情,包括航班信息、乘客信息和支付状态等。

5. 修改订单如果您需要修改已预订的机票订单,可以按照以下步骤进行:1. 在查询订单页面找到要修改的订单,点击相关的修改选项。

2. 根据系统提示,进行需要修改的内容,例如航班日期、乘客信息等。

3. 确认修改,并按系统提示完成修改流程。

6. 联系客服如果您在使用航空订票系统过程中遇到问题,可以联系客服寻求帮助。

以下是联系客服的方式:- 拨打客服XXX-XXXX-XXXX- 在系统内使用在线客服功能与客服人员聊天。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

这是我上网搜的一个材料,大家看一下,我们这次课程设计用java语言来实现,大家仔细看一下项目需求分析,基本要实现的功能如下,大家自己也在网上下些资料,共享一下,人多力量大,好好研究研究项目,下周会聚集大家讨论一下,定下每个人要完成的任务,大家一定要仔细研究,到时候有什么要添加修改的都提出来,做到让项目完美。

航空客运定票系统应该为客户提供三个基本的功能:查询航线、客票预定和办理退票。

(一)查询航线:能够根据客户提出终点站名输出相关的信息,包括航班号、飞机号、飞行日期、载员定额、余票量、已定票的客户名单(包括该客户的姓名、定票量、舱位等级)以及等候替补的客户名单(包括姓名和所需票量)、最近一天航班的日期和余票额;由于航空公司的航班保持基本不变,所以应该采用顺序存储结构将各条航线的基本情况登陆在一张线性表上,按照终点站名有序排列。

(二)客票预定:根据客户提出的要求(航班号和定票数额)查询该航班的余票情况。

如余票能够满足客户的要求则为客户办理定票手续并输出相应的座位号;若该航班已经满员或余票额少于客户的定票额,则需重新询问客户需求。

若需要可登记排队候补并留下客户的联系方式,不需要则退出。

在客票预定这一环节里将出现两个客户名单:已定票客户名单和需定票客户名单。

两客户名单可分别由线性表和队列实现。

为查找方便,已定票客户的线性表应按姓名有序,同时为了插入和删除方便,,应以链表作为存储结构。

由于无法知道预约的人数,队列也应该以链表作为存储结构。

(三)办理退票:根据客户提供的情况(日期航班),为客户办理退票手续,同时在系统中删除该客户的基本信息。

然后查询该航班是否有人排队替补,首先访问排在第一的客户,若退票额能够满足他的要求,则为他办理定票手续,否则依次询问其他排队候补的客户。

从问题的提出可以看到,我们需要的只是能实现对数据的插入,删除,检索这样一个软件。

由于乘客的数量较大并且不固定,因此选择用链表来保存乘客的基本信息:包括乘客的姓名,身份证号,搭乘班机的航班号,以及预定的座位号(假设座位预先订号)。

为了将这些信息保存起来以备下次程序运行时调用,将必需的信息写入文件中,在程序的初始化时读入。

综合一下来看,我们需要做的是建立一个可以插入和删除节点的链表,并能检索这个链表,在必要的时候将链表的内容保存到文件中。

任何一家航空公司都想尽可能的为客户提供优质的服务。

设计这样一个面向顾客的航空订票系统,最重要的就是设计的功能人性化,这就要求:采用先进的设计理念与开发工具,用技术全面提升服务,保证系统功能的强大与完整;具有高可靠性和强大有效的容错能力是系统设计的重要前提,不能影响平台的运行。

在系统设计过程中应充分考虑系统的可扩展性,使系统可满足不断优化、不断升级和新业务整合切入的需求。

1、航空客运订票系统【问题描述】航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。

试设计一个航空客运订票系统,以便上述业务可以借助计算机来实现。

【需求分析】系统能实现的操作和功能如下:(1)查询航线:根据旅客提出的终点站名输出如下信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;(2)承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求。

若需要,可登记排队候补;(3)承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘客定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需票量);航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。

下面这个C编写代码我之所以没删,是想让大家看看各部分功能在C中是怎样实现的,比如说订票的多种情况,不同情况,不同的提示等,这都是可以借鉴的。

用顺序表的查找和链队列实现#include <>#include <>#include <>#include <>#include <>#include <>#include <> 录入功能==\n");printf("\t==>2. 查询功能==\n");printf("\t==>3. 订票功能==\n");printf("\t==>4. 退票功能==\n");printf("\t==>5. 退出==\n");printf("\t+++++++++++++++++++++++++++++\n");printf("\t请选择:");scanf("%d",&n);printf("\n");switch(n){case 1: lurugongneng(); 通过目的地查询==\n");printf("\t==>2. 通过航班号查询==\n");printf("\t+++++++++++++++++++++++++++++\n");printf("\t请选择:");scanf("%d",&n);printf("\n");hongdianzhai,c);angbanhao,c);p->的作用是一样的if(m==0){printf("\t航班信息:\n");printf("\t航班号:%s\n",p->hangbanhao);printf("\t飞机号:%s\n",p->feijihao);printf("\t飞行时间:周%d\n",p->feixingriqi);printf("\t余票量:%d\n\n",p->yupiao);}}else{//如果不匹配的话就做printf("\t对不起没有你要找的航班号:\n"); m=0;}}while(m!=0);}voiddingpiaogongnen()//************************************************************** *订票功能{Linklist p=L;//Linklist类型的L来指向链表头Yidingkehu *h=H,*h1;//Yidingkehu 定义客户的结点,方便插入与删除linkQueue q=Q;//linkQueue类型的来,方便插入与删除char c[15];int m=1,piao,ydpiao=0,yd=0,n;//gets(c);printf("请输入终点站名:"); gets(c); printf("\n");p=L->next;if(p) {do{//查找一下,是否有这个航班if(!p){printf("对不起,没有你要找的航班:\n\n");goto loop1;}m=strcmpi(p->zhongdianzhai,c);if(m==0){printf("航班信息:\n");printf("航班号:%s\n",p->hangbanhao);printf("飞机号:%s\n",p->feijihao);printf("飞行时间:周%d\n",p->feixingriqi);printf("余票量:%d\n",p->yupiao);}else p=p->next;}while(m!=0);if(m==0){do{printf("\n请输入你要订的票数:"); scanf("%d",&piao);if(piao<=p->yupiao){h=p->yiding;if(h){h1=h;h=h->next1;h=(struct Yidingkehu*)malloc(sizeof(Yidingkehu));printf("请输入你的名字:");gets(h->name);gets(h->name);h->dingpiaoshu=piao;h->next1=h1->next1;h1->next1=h;p->yupiao=p->yupiao-piao;printf("订票成功:\n"); m=2;}}else{ printf("余票量:%d\n",p->yupiao);printf("对不起,余票%d 张不足,不能完成订票\n\n",p->yupiao);printf(" 是否要重新订票\n");printf("需要请输入1 否则请按2 预订请输入3 : ");scanf("%d",&m);printf("\n");if(m==3) goto loop3;}}while(m==1);}}else if(!p) {loop3: struct Weidingkehu *q3;printf("对不起,该航班的票已售完\n");=p->yudingqueue;if== printf("没有人预订票,是否要预订\n");else if!= printf("已有人预订票,是否要预订\n");printf("预订请输入1 否则输入2 : ");scanf("%d",&n);printf("\n");if(n==1){q3=(Qptr)malloc(sizeof(Weidingkehu));printf("请输入你的姓名"); gets(q3->name); gets(q3->name);//q3不能指向nameprintf("请输入订票数"); scanf("%d",&q3->yudingpiao);q3->next2=NULL;>next2=q3;=q3;printf(" 你已经预订了!\n");}}loop1:;}voidtuipiaogongnen()//***************************************************************退票功能{Linklist p=L;Yidingkehu *h=H,*h1,*h2;linkQueue q=Q;char c[15],name1[15];int m=1,piao,n;//gets(c);printf("请输入航班号:"); gets(c);p=L;//->next;if(p){do{ //使用do while来查找是否有此航班if(!p){//如果是到了表尾且没有匹配,goto至再输入航班号printf("\n对不起,没有你要找的航班:\n");goto loop1;}m=strcmpi(p->hangbanhao,c);//如果匹配的话,m=0if(m==0){printf("\t航班信息:\n");printf("航班号:%s\n",p->hangbanhao);printf("飞机号:%s\n",p->feijihao);printf("飞行时间:周%d\n",p->feixingriqi);printf("余票量:%d\n",p->yupiao);}else p=p->next;}while(m!=0);if(m==0){//如果找到了,就来给他退票do{h=p->yiding;if(h){printf("请输入你的姓名:");gets(name1);//gets(name1);printf("请输入你订的票数:");scanf("%d",&piao);printf("\n");h1=h;h=h->next1;if(strcmpi(h->name,name1)==0&&h->dingpiaoshu==piao)//如果名字和订的票数相等,则就给他取消订票{p->yupiao+=h->dingpiaoshu;h2=h;h1->next1=h->next1;free(h2);printf("你取消订票成功:\n\n");struct Weidingkehu *q3;=p->yudingqueue;if== {printf("没有人预订票:\n"); goto loop1;}if((p->yupiao)>=>next2->yudingpiao)){h2=(struct Yidingkehu*)malloc(sizeof(Yidingkehu));strcpy(h2->name,>next2->name);h2->dingpiaoshu=>next2->yudingpiao;n=p->>next2->yudingpiao;p->yupiao=n;q3=>next2;//>next2=q3->next2;//这二语句来删除结点if==q3) =;free(q3);//释放空间printf("链队中删除成功\n");h2->next1=h->next1;h->next1=h2;//为之插入进已订票客户链表中printf("为预订的客户订票成功\n");}else printf("余票数不够,不能为预订客户订票!\n");}else{ //如果没有找到,即系统中没有该人的信息,提示是否来重新查找printf("对不起,该航班没有人订票或者是你没有订该航班的票\n");printf("是否要重新查找并取消订票\n");printf("需要请输入1 否则请按2 ");scanf("%d",&m);printf("\n");}}}while(m==1);}}loop1: ;}。

相关文档
最新文档