栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++第三章 实验四 1

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++第三章 实验四 1

题目:

    已知一个航空管理员操作类的数据成员如下:

Class FlightInfo

{

stringNo; //航班号

stringStartCity; //起飞地点

stringEndCity; //降落地点

stringStartDate; //日期

stringStartTime; //起飞时间

stringEndTime; //降落时间

intFirstTicket; //头等舱剩余票数

intFirstPrice; //头等舱价格

intSecondTicket; //经济舱剩余票数

intSecondPrice; //经济价格

public:

};

编程要求:

(1)完成这个类的定义,要求:

a. 具有两个参数的构造函数,参数分别为航班号和日期,实现航空管理员对航班的新建、修改、删除等操作;

b. 设置航班起飞的日期和时间、头等舱/经济舱的价格和剩余票数、出发地和目的地、航班号。

(2)定义一个FlightManager类用来管理航班信息,实现增加、编辑、删除航班的供能。

#include
using namespace std;
#include
#include
#include
int sum=0;                   //记录航班总数
void menu();                 //实现菜单功能 
class FlightInfo
{
    char No[20];	         //航班号 
    char StartCity[20];	     //起飞地点 
    char EndCity[20];	     //降落地点 
    char StartDate[20];	     //日期 
    char StartTime[20];	     //起飞时间 
    char EndTime[20];	     //降落时间 
    int FirstTicket;	     //头等舱剩余票数 
    int FirstPrice;		     //头等舱价格 
    int SecondTicket;	     //经济舱剩余票数 
    int SecondPrice;	     //经济舱价格 

public:
    FlightInfo();            //构造函数
	void setNo(char _No[20]){strcpy(No,_No);};
	void setStartCity(char _StartCity[20]){strcpy(StartCity,_StartCity);};
	void setEndCity(char _EndCity[20]){strcpy(EndCity,_EndCity);};
	void setStartDate(char _StartDate[20]){strcpy(StartDate,_StartDate);};
	void setStartTime(char _StartTime[20]){strcpy(StartTime,_StartTime);};
	void setEndime(char _EndTime[20]){strcpy(EndTime,_EndTime);};
	void setFirstTicket(int firstTicket){FirstTicket=firstTicket;};
	void setFirstPrice(int firstPrice){FirstPrice=firstPrice;};
	void setSecondTicket(int secondTicket){SecondTicket=secondTicket;};
	void setSecondPrice(int secondPrice){SecondPrice=secondPrice;};
	char *getNo(){return No;};
	char *getStartCity(){return StartCity;};
	char *getEndCity(){return EndCity;};
	char *getStartDate(){return StartDate;};
	char *getStartTime(){return StartTime;};
	char *getEndTime(){return EndTime;};
	int getFirstTicket(){return FirstTicket;};
	int getFirstPrice(){return FirstPrice;};
	int getSecondTicket(){return SecondTicket;};
	int getSecondPrice(){return SecondPrice;};
};

FlightInfo::FlightInfo()
{
	cout<<"请输入航班号:";
	cin>>No;
	cin.ignore();
	cout<<"请输入航班起飞地点:";
	cin>>StartCity;
	cout<<"请输入航班降落地点:";
	cin>>EndCity;
	cout<<"请输入航班起飞日期:";
	cin>>StartDate;
	cout<<"请输入航班起飞时间:";
	cin>>StartTime;
	cout<<"请输入航班降落时间:";
	cin>>EndTime;
	cout<<"请输入航班头等舱剩余票数:";
	cin>>FirstTicket;
	cout<<"请输入航班头等舱价格:";
	cin>>FirstPrice;
	cout<<"请输入航班经济舱剩余票数:";
	cin>>SecondTicket;
	cout<<"请输入航班经济舱价格:";
	cin>>SecondPrice;
}

FlightInfo *info[100]={NULL};          //空指针 

class FlightManager
{
public:
	void addFlight();
	void editFlight();
	void delFlight();
};

void FlightManager::addFlight()       //增添航班 
{
	info[sum]=new FlightInfo;
	sum++;
}

void FlightManager::editFlight()                     //编辑航班信息 
{
	char no[20],start_city[20],end_city[20],start_date[20],start_time[20],end_time[20];
	int n,num,command,first_ticket,first_price,second_ticket,second_price;
	cout<<"请输入想编辑的航班号:";
	cin>>no;
	n=sum;
	for(num=0;numgetNo(),no)==0)
		{
			n=num;                                                     //记录航班 
			cout<<"请输入您想编辑的航班信息对应的数字:"<>command;
			switch(command)
			{
				case 1:
				{
					cout<<"请输入修改后的起飞地点:"<>start_city;
					info[num]->setStartCity(start_city); 
					break;
				}
				case 2:
				{
					cout<<"请输入修改后的降落地点:"<>end_city;
					info[num]->setEndCity(end_city); 
					break;
				}
				case 3:
				{
					cout<<"请输入修改后的起飞日期:"<>start_date;
					info[num]->setStartDate(start_date); 
					break;
				}
				case 4:
				{
					cout<<"请输入修改后的起飞时间:"<>start_time;
					info[num]->setStartTime(start_time); 
					break;
				}
				case 5:
				{
					cout<<"请输入修改后的降落时间:"<>end_time;
					info[num]->setEndime(end_time); 
					break;
				}
				case 6:
				{
					cout<<"请输入修改后的头等舱剩余票数:"<>first_ticket;
					info[num]->setFirstTicket(first_ticket); 
					break;
				}
				case 7:
				{
					cout<<"请输入修改后的头等舱价格:"<>first_price;
					info[num]->setFirstPrice(first_price); 
					break;
				}
				case 8:
				{
					cout<<"请输入修改后的经济舱剩余票数:"<>second_ticket;
					info[num]->setSecondTicket(second_ticket); 
					break;
				}
				case 9:
				{
					cout<<"请输入修改后的经济舱价格:"<>second_price;
					info[num]->setSecondPrice(second_price); 
					break;
				}
			} 
		}
	} 
	if(n>no;
	j=sum;
	for(num=0;numgetNo(),no)==0)
	    {
	    	j=num;                                //记录航班 
	    	for(t=num;t>choice;
	if(choice>=1&&choice<=4)
	{
		switch(choice)
		{
			case 1:manager.addFlight();break;
			case 2:manager.editFlight();break;
			case 3:manager.delFlight();break;
			case 4:exit(0);break;
		}
	}
	else
	{
		cout<<"您输入的数字有误,请重新输入:"< 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/767365.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号