民航飞行与地图简易管理系统C++
时间: 2023-12-30 21:03:07 浏览: 29
民航飞行与地图简易管理系统可以用C++来实现,下面是一个简单的实现框架:
```c++
#include<iostream>
#include<string>
#include<vector>
using namespace std;
//定义航班类
class Flight {
public:
string flightNo; //航班号
string startCity; //起点城市
string endCity; //终点城市
string startTime; //起飞时间
string endTime; //到达时间
};
//定义城市类
class City {
public:
string cityName; //城市名
vector<Flight> flights; //该城市出发的航班
};
//定义航线管理系统类
class FlightSystem {
public:
vector<City> cities; //所有城市
//添加航班
void addFlight(Flight flight);
//查询航班
void queryFlight(string startCity, string endCity, string startTime);
};
//添加航班
void FlightSystem::addFlight(Flight flight) {
//查找起点城市
bool foundStartCity = false;
for (int i = 0; i < cities.size(); i++) {
if (cities[i].cityName == flight.startCity) {
cities[i].flights.push_back(flight);
foundStartCity = true;
break;
}
}
//如果起点城市不存在,新建一个城市
if (!foundStartCity) {
City city;
city.cityName = flight.startCity;
city.flights.push_back(flight);
cities.push_back(city);
}
}
//查询航班
void FlightSystem::queryFlight(string startCity, string endCity, string startTime) {
//遍历起点城市的航班
for (int i = 0; i < cities.size(); i++) {
if (cities[i].cityName == startCity) {
for (int j = 0; j < cities[i].flights.size(); j++) {
Flight flight = cities[i].flights[j];
if (flight.endCity == endCity && flight.startTime >= startTime) {
//符合条件,输出航班信息
cout << "航班号:" << flight.flightNo << endl;
cout << "起点城市:" << flight.startCity << endl;
cout << "终点城市:" << flight.endCity << endl;
cout << "起飞时间:" << flight.startTime << endl;
cout << "到达时间:" << flight.endTime << endl;
}
}
break;
}
}
}
//主函数
int main() {
FlightSystem system;
//添加航班
Flight flight1;
flight1.flightNo = "CZ123";
flight1.startCity = "北京";
flight1.endCity = "上海";
flight1.startTime = "2020-01-01 08:00:00";
flight1.endTime = "2020-01-01 10:00:00";
system.addFlight(flight1);
Flight flight2;
flight2.flightNo = "MU456";
flight2.startCity = "北京";
flight2.endCity = "广州";
flight2.startTime = "2020-01-01 09:00:00";
flight2.endTime = "2020-01-01 12:00:00";
system.addFlight(flight2);
Flight flight3;
flight3.flightNo = "CA789";
flight3.startCity = "上海";
flight3.endCity = "北京";
flight3.startTime = "2020-01-01 10:00:00";
flight3.endTime = "2020-01-01 12:00:00";
system.addFlight(flight3);
//查询航班
system.queryFlight("北京", "上海", "2020-01-01 08:00:00");
return 0;
}
```
上面的代码只是一个简单的实现,您可以根据具体需求进行修改和扩展。