Advertisement

航空客运订票系统的设计与实现

阅读量:

1 设计要求
1.1 问题描述
实现航空系统客运订票的主要业务活动。例如,浏览和查询航班信息、机票预订和办理退票等。
1.2 需求分析
(1)航班管理。每条航班所涉及的信息有:目的地、航班号、航班日期、航班时间、乘员定额、余票量。
(2)客户管理。有关订票的客户信息(包括姓名、订票量、舱位等级(1,2和3)以及等候替补的客户名单(包括姓名、所需票量)。
(3)系统实现的主要操作和功能:
 查询航班。根据旅客提出的终点站名输出下列信息:航班号、飞行日期、余票额。
 承办订票业务。根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若有余票,则为客户办理订票手续,输出座位号;若已满或者余票少于订票额,则需要重新询问客户需求;若需要,可等待排队候补。
 承办退票业务。根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所有退票额能满足该客户的要求,则为其办理订票手续,否则依次询问其他排队候补的客户。
2 概要设计
航空客运订票系统由航班管理系统、乘客订票系统、乘客退票系统、乘客管理系统、退出系统组成。
航班管理系统,主要完成添加航班、查看航班、查询航班、删除航班、返回主菜单功能。
乘客订票系统,主要完成乘客购票功能。
乘客退票系统,主要完成乘客退票和将满足要求的候补乘客变成航班乘客。
乘客管理系统,主要完成输出航班乘客信息、输出候补乘客信息、返回主菜单功能。
退出系统,退出航空客运订票系统。

下面为全部代码

复制代码
    #include<iostream>
    #include<windows.h>   	//用到system("cls)清屏 system("pause")暂停
    #include<iomanip>
    #include<cstdlib>
    using namespace std;
    struct Cu {
    	string name; //乘客名字
    	int amount[3];//各个仓票数
    	string number;//  手机号     
    	string sfz; //身份证
    	Cu *next;
    };
    struct  F {
    	string zd; //航班终点
    	string number;//航班号码
    	string data;//航班日期
    	string time;//航班时间
    	int rs;//航班总载客人数
    	int ws[3];//航班各个等级仓位人数
    	int jg[3];//航班各个等级仓位价格
    	Cu *have;//航班乘客链
    	Cu *nohave;//候补乘客链
    	F *next;
    };
    void shanchu(F *&f) {    //删除航班
    	system("cls");  //清屏
    	cout << "请输入想删除的航班号:";
    	string s;
    	cin >> s;  //获取输入字符串,存输入的航班号 
    	F *p = f;  //指向航班头结点
    	F *pre = f->next;  //指向首结点
    	for (; pre != NULL && pre->number != s; p = pre, pre = p->next); //找到目标航班结点和前一个结点
    	if (pre != NULL) {
    		Cu *t = pre->have;  //指向航班乘客链
    		if (t != NULL) {
    			for (Cu *tre = t->next; tre != NULL; t = tre, tre = t->next)
    				delete t;
    			delete t;   //删除航班乘客链所有结点
    		}
    		t = pre->nohave;    //指向航班候补乘客链
    		if (t != NULL) {
    			for (Cu *tre = t->next; tre != NULL; t = tre, tre = t->next)
    				delete t;
    			delete t;    //删除候补乘客链所有结点
    		}
    		p->next = pre->next;
    		delete pre;          //删除该航班结点
    		cout << "航班号为" << s << "的航班已被删除!" << endl;
    		system("pause");//暂停
    	}
    }
    void chaxun(F *f) {    //查询航班
    	while (1) {
    		system("cls"); // 清屏
    		cout << "1.按目的地查询" << endl    //查询航班界面
    			<< "2.按航班号查询" << endl
    			<< "3.按日期查询" << endl
    			<< "4.返回" << endl
    			<< "请输入数字:";
    		int k;
    		cin >> k;    //存输入的数,用于switch
    		switch (k) {
    			case 1: {
    					system("cls"); // 清屏
    					cout << "请输入目的地:";
    					string s;
    					cin >> s;    //输入字符串,存取航班目的地
    					int i = 0;   //存取符合条件的航班数
    					F *p = f;    //指向航班头结点
    					cout << "目的地 航班号  日期  时间  头等舱座位数 普通舱座位数 经济舱座位数 头等舱价格 普通舱价格 经济舱价格" << endl;
    					while (p != NULL) {
    						if (p->zd == s) {
    							cout << setw(6) << p->zd << setw(7) << p->number << setw(6) << p->data
    								<< setw(6) << p->time << setw(12) << p->ws[0] << setw(13) << p->ws[1]
    								<< setw(12) << p->ws[2] << setw(12) << p->jg[0] << setw(12) << p->jg[1]
    								<< setw(10) << p->jg[2] << endl;   //输入符合条件的航班详细信息
    							i++;  //有符合条件的航班,则总数加1
    						}
    						p = p->next; //移动到下一结点
    					}
    					printf("总共有%d条航班到达此地点\n", i);
    					if (i == 0) {
    						system("cls"); // 清屏
    						cout << "没有到该地点的航班" << endl;
    					}
    					system("pause");//暂停
    					break;
    				}
    			case 2: {
    					system("cls"); // 清屏
    					cout << "请输入航班号:";
    					string s;
    					cin >> s;     //获取输入的航班号
    					int i = 0;    //存放符合条件的航班数
    					F *p = f;     //指向航班
    					cout << "目的地 航班号  日期  时间  头等舱座位数 普通舱座位数 经济舱座位数 头等舱价格 普通舱价格 经济舱价格" << endl;
    					while (p != NULL) {
    						if (p->number == s) {
    							cout << setw(6) << p->zd << setw(7) << p->number << setw(6) << p->data
    								<< setw(6) << p->time << setw(12) << p->ws[0] << setw(13) << p->ws[1]
    								<< setw(12) << p->ws[2] << setw(12) << p->jg[0] << setw(12) << p->jg[1]
    								<< setw(10) << p->jg[2] << endl;   //输出符合条件的航班的详细信息
    							i++;  //符合条件,则符合航班总数加1
    						}
    						p = p->next;  //指向下一结点
    					}
    					if (i == 0) {
    						system("cls"); // 清屏
    						cout << "没有找到该航班" << endl;
    					}
    					system("pause");//暂停
    					break;
    				}
    			case 3: {
    					system("cls"); // 清屏
    					cout << "请输入日期(例如:10-20):";
    					string s;
    					cin >> s;   //获取输入的字符串,存放输入的日期
    					int i = 0;  //符合条件的航班总数
    					F *p = f;   //指向航班的头结点
    					cout << "目的地 航班号  日期  时间  头等舱座位数 普通舱座位数 经济舱座位数 头等舱价格 普通舱价格 经济舱价格" << endl;
    					while (p != NULL) {
    						if (p->data == s) {
    							cout << setw(6) << p->zd << setw(7) << p->number << setw(6) << p->data
    								<< setw(6) << p->time << setw(12) << p->ws[0] << setw(13) << p->ws[1]
    								<< setw(12) << p->ws[2] << setw(12) << p->jg[0] << setw(12) << p->jg[1]
    								<< setw(10) << p->jg[2] << endl;    //输出符合条件的航班的详细信息
    							i++;   //符合条件的航班总数加一
    						}
    						p = p->next;  //移动到下一结点
    					}
    					printf("今天总共有%d航班\n", i);
    					if (i == 0) {
    						system("cls"); // 清屏
    						cout << "今天没有航班" << endl;
    					}
    					system("pause");//暂停
    					break;
    				}
    			case 4:
    				break;
    			default:
    				system("cls"); // 清屏
    				cout << "你输入的数字不对!!!!!" << endl;
    				system("pause");//暂停
    				break;
    		}
    		if (k == 4)
    			break;
    	}
    }
    void chakan(F *f) {      //查看航班
    	int n = 0;        //存飞机航班总数
    	F *p = f;         //指航班头结点
    	p = p->next;     //移动到航班首结点
    	system("cls"); // 清屏
    	cout << "目的地 航班号  日期  时间  头等舱座位数 普通舱座位数 经济舱座位数 头等舱价格 普通舱价格 经济舱价格" << endl;
    	while (p != NULL) {
    		n++;  //查询到航班,则航班总数加1
    		cout << setw(6) << p->zd << setw(7) << p->number << setw(6) << p->data
    			<< setw(6) << p->time << setw(12) << p->ws[0] << setw(13) << p->ws[1]
    			<< setw(12) << p->ws[2] << setw(12) << p->jg[0] << setw(12) << p->jg[1]
    			<< setw(10) << p->jg[2] << endl;   //输出航班信息
    		p = p->next;  //移动到下一个结点
    	}
    	if (n == 0) {
    		system("cls"); // 清屏
    		cout << "目前没有任何航班!!!!!" << endl;
    	}
    	else
    		printf("目前有%d趟航班\n", n);
    	system("pause");//暂停
    }
    void create(F *&f) {   //增加航班
    	while (1) {
    		system("cls"); // 清屏
    		cout << "填写添加的航班的详细信息" << endl;
    		F *p = new F;         //创建新的飞机结点
    		cout << "请输入终点:";
    		cin >> p->zd;
    		cout << "请输入航班号(例如:CX1234):";
    		cin >> p->number;
    		cout << "请输入航班日期(例如:10-13):";
    		cin >> p->data;
    		cout << "请输入航班时间(例如:15:30):";
    		cin >> p->time;
    		cout << "请输入位置总数:";
    		cin >> p->rs;
    		cout << "请输入头等舱座位数:";
    		cin >> p->ws[0];
    		cout << "请输入普通舱座位数:";
    		cin >> p->ws[1];
    		cout << "请输入经济舱座位数:";
    		cin >> p->ws[2];
    		cout << "请输入头等舱价格:";
    		cin >> p->jg[0];
    		cout << "请输入普通舱价格:";
    		cin >> p->jg[1];
    		cout << "请输入经济舱价格:";
    		cin >> p->jg[2];          //输入详细的航班信息
    		p->have = p->nohave = NULL;  //航班乘客链和候补乘客链置空
    		if (((p->ws[0] + p->ws[1] + p->ws[2]) != p->rs) || p->jg[0] <= p->jg[1] || p->jg[0] <= p->jg[2] || p->jg[1] <= p->jg[2]) {
    			cout << "航班信息输入有误!!!!!" << endl
    				<< "位置总数要等于头等舱、普通舱、经济舱位置之和!!!!!"
    				<< "经济舱价格>普通舱价格>经济舱函数!!!!!"
    				<< "航班添加失败!!!!!" << endl;
    		}         //如果信息输入不符合条件,则添加失败
    		else {
    			cout << "航班添加成功!" << endl;
    			p->next = f->next;
    			f->next = p;          //采用头插法,插入新的飞机结点
    		}
    		system("pause");//暂停
    		system("cls"); // 清屏
    		cout << "是否继续录入航班,Y表示继续,N表示退出!" << endl
    			<< "请输入:";
    		char a;
    		cin >> a;   //获取输入的字符,是Y则继续添加航班
    		if (a != 'Y')
    			break;
    	}
    }
    void hangban(F *&f) {      //航班管理系统
    	while (1) {
    		system("cls"); // 清屏
    		cout << "1.添加航班" << endl;      //航班管理系统主界面
    		cout << "2.查看航班" << endl;
    		cout << "3.查询航班" << endl;
    		cout << "4.删除航班" << endl;
    		cout << "5.返回主菜单" << endl;
    		cout << "请输入你想使用的功能:";
    		int k;
    		cin >> k;   //获取输入的数,用于switch
    		switch (k) {
    			case 1:create(f);    //调用create(F *&f),添加航班
    				break;
    			case 2:chakan(f);    //调用chankan(F *f),查看航班
    				break;
    			case 3:chaxun(f);    //调用chaxun(F *f),查询航班
    				break;
    			case 4:shanchu(f);   //调用shanchu(F *&f),删除航班
    				break;
    			case 5:break;
    			default:
    				system("cls"); // 清屏
    				cout << "你输入的数字不对!!!!!" << endl;
    				system("pause");//暂停
    				break;
    		}
    		if (k == 5)
    			break;
    	}
    }
    int  Length(Cu *p) {    //求航班候补链结点长度
    	int n = 0;
    	while (p != NULL) {
    		n++;
    		p = p->next;
    	}
    	return n;
    }
    void dingpiao(F *&f) {   //乘客订票系统
    	while (1) {
    		system("cls"); // 清屏
    		F *p = f->next;
    		if (p == NULL) {
    			cout << "目前暂无任何航班!!!!" << endl;
    			system("pause");//暂停
    			return;
    		}
    		else {
    			cout << "请输入航班日期(例:10-20):";
    			string s;
    			cin >> s;  //存放输入的日期
    			cout << "请输入目的地:";
    			string s1;
    			cin >> s1; //存放输入的目的地
    			cout << "请输入航班号(例:CX1234):";
    			string s2;
    			cin >> s2; //存放输入的航班号
    			for (; p != NULL; p = p->next) {
    				if (p->data == s && p->zd == s1 && p->number == s2)
    					break;
    			}    //在航班中找有没有符合条件的航班
    			if (p == NULL) {   //如果是空指针,说明没有
    				cout << "你输入的信息有误,请重新输入!!!!" << endl;
    				system("pause");//暂停
    			}
    			else {       //有该航班,开始订票
    				system("cls"); // 清屏
    				cout << "下面请输入详细的订票信息" << endl;
    				Cu *t = new Cu;  //创建新的乘客结点
    				cout << "请输入你的名字:";
    				cin >> t->name;
    				cout << "请输入你想买的头等舱票数:";
    				cin >> t->amount[0];
    				cout << "请输入你想买的普通舱票数:";
    				cin >> t->amount[1];
    				cout << "请输入你想买的经济舱票数:";
    				cin >> t->amount[2];
    				cout << "请输入你的手机号:";
    				cin >> t->number;
    				cout << "请输入你的身份证:";
    				cin >> t->sfz;          //输入详细的乘客信息
    				if (t->amount[0] <= p->ws[0] && t->amount[1] <= p->ws[1] && t->amount[2] <= p->ws[2])
    				{
    					t->next = p->have;
    					p->have = t;    // 订票小于等于航班剩余的票数, 则将该结点采用头插法,插入到航班乘客链
    					p->ws[0] -= t->amount[0];
    					p->ws[1] -= t->amount[1];
    					p->ws[2] -= t->amount[2];  ///航班票数减去乘客订购的票数
    					int n = t->amount[0] * p->jg[0] + t->amount[1] * p->jg[1] + t->amount[2] * p->jg[2];
    					cout << "恭喜你购票成功!" << endl
    						<< "你总共花了" << n << "元" << endl;
    					system("pause");//暂停
    				}
    				else {
    					cout << "票数不足,";
    					cout << "您是否想成为候补人员,Y代表是,N代表否,请输入:";
    					char n;
    					cin >> n;  //存放输入的字符,是否想成为候补乘客
    					if (n == 'Y') {
    						Cu *t1 = p->nohave;   //指向头结点
    						int l = Length(p->nohave); //求出候补乘客链的长度
    						if (l == 0) {    //l==0,代表候补乘客链没有结点
    							p->nohave = t;  //直接将该结点变成首结点
    							t->next = NULL;  //下一结点置空
    							cout << "你已候补成功!" << endl;
    							system("pause");//暂停
    						}
    						else {
    							for (l = l - 1; l > 0; l--)
    								t1 = t1->next;   //移动的到尾结点
    							t1->next = t;
    							t->next = NULL;  //采用尾插法,将该结点插入到候补乘客链
    							cout << "你已经候补成功!" << endl;
    							system("pause");//暂停
    						}
    					}
    				}
    				return;
    			}
    		}
    	}
    }
    
    void houbu(F *&f, string s) {
    	system("cls"); // 清屏
    	cout << "是否要将候补乘客中满足票数的变为航班乘客,Y表示是,N表示否,请输入:";
    	char c;
    	cin >> c; //存放输入的字符,判断要不要把符合条件的候补乘客变成航班乘客
    	if (c == 'Y') {
    		F *p = f;
    		for (; p != NULL && p->number != s; p = p->next);
    		int n = 0;   //存放变成航班乘客的人数
    		while (1) {
    			bool b = false;  //用于判断有没有人符合条件
    			Cu *t = p->nohave;  //指向航班候补乘客链的首结点
    			for (; t != NULL; t = t->next) {
    				if (t->amount[0] <= p->ws[0] && t->amount[1] <= p->ws[1] && t->amount[2] <= p->ws[2]) {
    					if (t == p->nohave) {
    						p->nohave = t->next; //如果他是首结点,则将该结点的下一个结点变成航班乘客链的首结点
    						t->next = p->have;
    						p->have = t;  //采用头插法将该结点插入到航班乘客链
    						p->ws[0] -= t->amount[0];
    						p->ws[1] -= t->amount[1];
    						p->ws[2] -= t->amount[2];   //航班票数减去乘客订购的票数
    						b = true;   //代表有候补乘客变成航班乘客
    						break;
    					}
    					else
    					{         //不是候补乘客链的首结点
    						Cu *tre = p->nohave;
    						for (; tre->next != t && tre != NULL; tre = tre->next);  //找到该结点的前一个结点
    						tre->next = t->next;  //将该结点从候补乘客链删除
    						t->next = p->have;
    						p->have = t;      //采用头插法将该结点插入到航班乘客链中
    						p->ws[0] -= t->amount[0];
    						p->ws[1] -= t->amount[1];
    						p->ws[2] -= t->amount[2];  //航班票数减去乘客订购的票数
    						b = true;       //代表有人从候补乘客变成航班乘客
    						break;
    					}
    				}
    			}
    			if (b == false)   //没有人从候补乘客变成航班乘客,则跳出循环
    				break;
    		}
    		cout << "已将满足条件的候补乘客变为航班乘客!" << endl;
    		system("pause");//暂停
    		return;
    	}
    	else
    		return;
    }
    void tuipiao(F *&f) {
    	while (1) {
    		system("cls"); // 清屏
    		cout << "请输入你的航班号:";
    		string s;
    		cin >> s;     //存放输入的航班号
    		F *p = f;    //指向航班的头结点
    		for (; p != NULL; p = p->next) {
    			if (p->number == s)
    				break;
    		}     //找是否有该航班
    		if (p == NULL) {   //如果为空,说明没有该航班,重新输入航班信息
    			cout << "没有找到该航班" << endl
    				<< "请重新输入!" << endl;
    			system("pause");//暂停
    		}
    		else {          //有符合条件的航班,则开始退票
    			cout << "请输入你的名字:";
    			string s1;
    			cin >> s1;    //存放输入的名字
    			Cu *t = p->have;  //指向航班乘客链 
    			for (; t != NULL; t = t->next) {
    				if (t->name == s1)
    					break;
    			}    //查找航班上是否有该乘客
    			if (t == NULL) {    //为空,说明没有该乘客
    				cout << s << "航班上没有该乘客" << endl
    					<< "请重新输入!!!!" << endl;
    				system("pause");//暂停
    			}
    			else {    //有该乘客,则开始退票
    				if (p->have == t) {
    					p->have = t->next;   //如果找到的结点是首结点,则将首结点变成该结点的下一个结点
    					cout << "退票成功!" << endl;
    					p->ws[0] += t->amount[0];
    					p->ws[1] += t->amount[1];
    					p->ws[2] += t->amount[2];  //航班票数加上乘客订票数
    					system("pause");//暂停
    					delete t;   //删除该结点
    					houbu(f, s);
    				}
    				else {   //如果不是首结点
    					Cu *tre = p->have;   //指向首结点
    					for (; tre->next != t && tre != NULL; tre = tre->next);  //找到该乘客的前一个结点
    					tre->next = t->next;   //删除该结点
    					cout << "退票成功!" << endl;
    					p->ws[0] += t->amount[0];
    					p->ws[1] += t->amount[1];
    					p->ws[2] += t->amount[2];  // 航班票数加上乘客订的票数
    					delete t;      //释放结点空间
    					system("pause");//暂停
    					houbu(f, s);
    				}
    				return;
    			}
    		}
    	}
    }
    void xinxi1(F *&f) {
    	F *p = f;   //指向航班的头结点
    	while (1) {
    		system("cls"); // 清屏
    		cout << "请输入航班号(例:CX1234):";
    		string s;
    		cin >> s;     //存放输入的航班号
    		for (; p != NULL; p = p->next) {
    			if (p->number == s)
    				break;
    		}    //查找有没有符合条件的航班
    		if (p == NULL) {   //为空,代表没有符合条件的
    			cout << "没有该航班,请重新输入!" << endl;
    			system("pause");//暂停
    		}
    		else {    //有符合条件的航班
    			int n = 0; //存放航班乘客总数
    			cout << "乘客名字 头等舱票数 普通舱票数 经济舱票数       手机号              身份证" << endl;
    			Cu *t = p->have;  //指向航班乘客链的首结点
    			for (; t != NULL; t = t->next) {
    				n++;  //总数加1
    				cout << setw(8) << t->name << setw(10) << t->amount[0] << setw(10) << t->amount[1]
    					<< setw(10) << t->amount[2] << setw(16) << t->number << setw(20) << t->sfz << endl;
    			}      //输出乘客的详细信息
    			if (n != 0)  //乘客总数不为0
    				cout << "总共有" << n << "个人乘坐" << s << "航班" << endl;
    			else {
    				system("cls"); // 清屏
    				cout << "没有人乘坐该航班!" << endl;
    			}
    			system("pause");//暂停
    			return;
    		}
    	}
    }
    void xinxi2(F *&f) {
    	F *p = f;
    	while (1) {
    		system("cls"); // 清屏
    		cout << "请输入航班号(例:CX1234):";
    		string s;
    		cin >> s; //存放输入的航班号
    		for (; p != NULL; p = p->next) {
    			if (p->number == s)
    				break;
    		}   //查找有没有符合条件的航班
    		if (p == NULL) {  //为空,说明没有符合条件的航班
    			cout << "没有该航班,请重新输入!" << endl;
    			system("pause");//暂停
    		}
    		else {   //有符合条件的航班
    			int n = 0;   //存放候补乘客总数
    			cout << "乘客名字 头等舱票数 普通舱票数 经济舱票数       手机号              身份证" << endl;
    			Cu *t = p->nohave; //指向候补乘客链的首结点
    			for (; t != NULL; t = t->next) {
    				n++;   //候补乘客总数加一
    				cout << setw(8) << t->name << setw(10) << t->amount[0] << setw(10) << t->amount[1]
    					<< setw(10) << t->amount[2] << setw(16) << t->number << setw(20) << t->sfz << endl;
    			}  //输出详细的乘客
    			if (n != 0)  //总数不为0
    				cout << "总共有" << n << "个人候补" << endl;
    			else {
    				system("cls"); // 清屏
    				cout << "没有人候补该航班!" << endl;
    			}
    			system("pause");//暂停
    			return;
    		}
    	}
    }
    void guanli(F *&f) {
    	while (1) {
    		system("cls"); // 清屏
    		cout << "1.航班乘客信息" << endl;   //乘客管理系统界面
    		cout << "2.候补乘客信息" << endl;
    		cout << "3.返回主菜单" << endl;
    		cout << "请输入你想使用的功能:";
    		int k;
    		cin >> k; //存放输入的数字,用于switch
    		switch (k) {
    			case 1:system("cls"); // 清屏
    				xinxi1(f);     //调用xinxi1(F *f),输出航班乘客信息
    				break;
    			case 2:system("cls"); // 清屏
    				xinxi2(f);      //调用xinxi2(F *f),输出候补乘客信息
    				break;
    			case 3:system("cls"); // 清屏
    				break;
    			default:system("cls"); // 清屏
    				cout << "你输入的数字不对!!!!!" << endl;
    				system("pause");//暂停
    				break;
    		}
    		if (k == 3)   //输入为3,则返回主系统
    			break;
    	}
    }
    int main() {
    	F *f = new F;	//创建飞机头结点
    	f->have = f->nohave = NULL;	//将飞机头结点的航班乘客链和候补乘客链置空
    	f->next = NULL; // 飞机头结点的下一结点置空
    	while (1) {
    		system("cls");	//清屏
    		cout << "**********航空订票系统**********" << endl;    //主系统界面
    		cout << "**       1.航班管理系统       **" << endl;
    		cout << "**       2.乘客订票系统       **" << endl;
    		cout << "**       3.乘客退票系统       **" << endl;
    		cout << "**       4.乘客管理系统       **" << endl;
    		cout << "**       5.退出系统           **" << endl;
    		cout << "********************************" << endl;
    		cout << "请输入你想使用的功能:";
    		int k = 0;
    		cin >> k;	//获取输入的数,用于switch
    		switch (k) {
    			case 1:system("cls"); // 清屏
    				hangban(f);   //调用hangban(F *&f)函数,进入航班管理系统
    				break;
    			case 2:system("cls"); // 清屏
    				dingpiao(f);   //调用dingpiao(F * &f)函数,进入乘客订票系统
    				break;
    			case 3:system("cls");// 清屏
    				tuipiao(f);//调用tuipiao(F *&f)函数,进入乘客退票系统
    				break;
    			case 4:system("cls");// 清屏
    				guanli(f);//调用guanli(F *&f)函数,进入乘客管理系统
    				break;
    			case 5:
    				system("cls");// 清屏
    				cout << "欢迎下次使用!" << endl;
    				system("pause");//暂停
    				exit(1);   //退出程序
    			default:
    				system("cls");// 清屏
    				cout << "你输入的数字不对!!!!!" << endl;
    				system("pause"); //暂停
    				break;
    		}
    	}
    }

全部评论 (0)

还没有任何评论哟~