用C++代码写一个火车票管理系统
时间: 2023-11-08 09:05:45 浏览: 33
好的,以下是一个简单的火车票管理系统的C++代码:
```cpp
#include <iostream>
#include <vector>
#include <string>
using namespace std;
class Train {
private:
string trainNumber; //车次
string startStation; //起点站
string endStation; //终点站
string departureTime; //出发时间
int seatNum; //座位数
int ticketNum; //余票数
public:
Train(string num, string start, string end, string time, int seat, int ticket) {
trainNumber = num;
startStation = start;
endStation = end;
departureTime = time;
seatNum = seat;
ticketNum = ticket;
}
void display() { //显示车次信息
cout << trainNumber << "\t" << startStation << "\t" << endStation << "\t" << departureTime << "\t" << seatNum << "\t" << ticketNum << endl;
}
string getTrainNumber() { //获取车次
return trainNumber;
}
string getStartStation() { //获取起点站
return startStation;
}
string getEndStation() { //获取终点站
return endStation;
}
string getDepartureTime() { //获取出发时间
return departureTime;
}
int getSeatNum() { //获取座位数
return seatNum;
}
int getTicketNum() { //获取余票数
return ticketNum;
}
void setTicketNum(int num) { //设置余票数
ticketNum = num;
}
};
class TrainManager {
private:
vector<Train> trainList; //存放火车信息的列表
public:
TrainManager() {}
void addTrain(Train train) { //添加火车信息
trainList.push_back(train);
}
void displayAllTrain() { //显示所有车次信息
cout << "车次\t起点站\t终点站\t出发时间\t座位数\t余票数" << endl;
for (int i = 0; i < trainList.size(); i++) {
trainList[i].display();
}
}
Train* searchTrain(string num) { //查找车次信息
for (int i = 0; i < trainList.size(); i++) {
if (trainList[i].getTrainNumber() == num) {
return &trainList[i];
}
}
return NULL;
}
};
int main() {
TrainManager trainManager;
//添加火车信息
trainManager.addTrain(Train("G1234", "北京", "上海", "08:00", 100, 80));
trainManager.addTrain(Train("G5678", "上海", "广州", "10:00", 120, 100));
trainManager.addTrain(Train("D1234", "北京", "上海", "09:00", 80, 60));
trainManager.addTrain(Train("D5678", "上海", "广州", "11:00", 100, 80));
//显示所有车次信息
trainManager.displayAllTrain();
//查询车次信息
string num;
cout << "请输入要查询的车次:";
cin >> num;
Train* train = trainManager.searchTrain(num);
if (train != NULL) {
cout << "车次\t起点站\t终点站\t出发时间\t座位数\t余票数" << endl;
train->display();
}
else {
cout << "没有找到该车次!" << endl;
}
return 0;
}
```
代码实现的功能包括:添加火车信息、显示所有车次信息、查询车次信息。运行程序后,可以在控制台输入要查询的车次,程序会输出该车次的详细信息。