• 大小: 14KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-05
  • 语言: C/C++
  • 标签: C++  

资源简介

1、问题描述: 航空客运订票的业务包括查询航班、客票预订和办理退票等。试设计一个航空客运订票系统,已使上述业务可以借助计算机完成。 2、功能要求: (1)每条航线所涉及的信息有终点站名、航班号、飞机号、星期几飞行、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级),以及等候补替补的客户名单(包括姓名、所需票量)。 (2)作为示意系统:全部数据可以只放在内存中。 (3)系统能实现的操作和功能如下: 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)。 查询航线:根据旅客提出的终点站名输入下列信息:航班号、飞机号、星期几起飞、最近航班的日期和余票量。 承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号。若已满员或者余票数少于订票额,则需重新寻味客户要求,若需要,可登记排队候补。 承办退票业务:根据客户提供的情况(日期、航班)为客户办理退票手续,然后查询该航班是否有人排队等候补。首先询问排在第一的客户,若所有退票额能满足他的要求,则为他办理订票手续否则依次询问其他排队候补的客户。 修改航班信息:当航班信息改变可以修改航班数据文件。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
using namespace std;
int N=0;//定义一个N的全局变量  用来控制动态数组内存的开辟
class Plane
{
private:
    char StationName[40];//终点站名
    int FlightNumber;//航班号
    int PlaneNumber;//飞机号
    int Week;//星期几飞
    int Day;//日期
    int People;//成员定额
    int left;//余票额
public:
    Plane()//构造函数
    {
        StationName[0]=‘\0‘;
        FlightNumber=0;
        PlaneNumber=0;
        Week=0;
        Day=0;
        People=0;
        left=0;
    }
    void start();//初始化函数
    void find();//查询函数
    void filework();//文件操作提示
    void changeMessage();//修改航班信息
    void printfMessage();//显示航班信息
    void read();//读取文件
    void write();//保存文件
    void initinaze()//初始化机票
    {
        cout<<“请输入终点站名: “;
        cin>>StationName;

        cout<<“请输入航班号: “;
        cin>>FlightNumber;

        cout<<“请输入飞机号: “;
        cin>>PlaneNumber;

        cout<<“星期几飞: “;
        cin>>Week;

        cout<<“飞行日期: “;
        cin>>Day;

        cout<<“成员定额: “;
        cin>>People;

        cout<<“余票数目: “;
        cin>>left;
    }
    ~Plane() {}; //析构函数

    //get函数组  获取信息
    char *getStationName()
    {
        return StationName;  //获取终点站名
    }
    int getPlaneNumber()
    {
        return PlaneNumber;  //获取飞机号
    }
    int getFlightNumber()
    {
        return FlightNumber;    //获取航班号
    }
    int getWeek()
    {
        return Week;    //获取星期几飞
    }
    int getDay()
    {
        return Day;
    }
    int getleft()
    {
        return left;//获取余票数额
    }
    int getPeople()
    {
        return People;
    }
    void inleft(int n)
    {
        left=left+n;    //余票额增加
    }
    void deleft(int n)
    {
        left=left-n;    //余票额减少
    }
    //  Set函数组  修改信息
    void setStationName(char *stationName)
    {
        strcpy(this->StationNamestationName);
    }
    void setDay(int day)
    {
        this->Day=day;
    }
    void setWeek(int week)
    {
        this->Week=week;
    }
    void setPlaneNumber(int PlaneNumber)
    {
        this->PlaneNumber=PlaneNumber;
    }
    void setFlightNumber(int FlightNumber)
    {
        this->FlightNumber=FlightNumber;
    }
    void setPeople(int people)
    {
        this->People=people;
    }
    void setleft(int left)
    {
        this->left=left;
    }

};
Plane *pl;//动态数组指针
Plane p2;//调用成员方法对象
class Person
{
private:
Plane *p;
    char PName[40];//姓名
    int num;//订票数目
int planenumber;
public:
int day;
int grade;//舱位等级
void book();//订票函数
    void back();//退票函数
int buyday;//用户购票日期
int buynumber;//用户购票的航班号
void setPlane(int number)
{
for(int i=0;i {
if(number==pl[i].getFlightNumber())
{
p=pl+i;
}
}
}
int getplanenumber()
{
return planenumber;
}
    char *getName()
    {
        return PName;
    }
    int getnum()
    {
        return num;
    }
    void setPName(ch

评论

共有 条评论