C语言课程设计火车订票系统存储结构设计,火车售票系统(数据结构课设)
时间: 2023-08-16 22:47:40 浏览: 117
C语言课程设计之火车订票系统
为了实现火车售票系统的存储结构设计,我们需要考虑以下几个方面:
1. 火车信息的存储:需要存储每趟火车的编号、始发站、终点站、出发时间、到达时间、座位数、票价等信息。可以使用结构体数组来存储每趟火车的信息。
2. 乘客信息的存储:需要存储乘客的姓名、身份证号、订票时间、座位号等信息。可以使用链表来存储乘客信息。
3. 座位信息的存储:需要存储每趟火车的座位信息,以便查询余票和订票。可以使用二维数组来存储座位信息,每一行代表一趟火车的座位信息,每一列代表一个座位。
4. 订单信息的存储:需要存储乘客的订票信息,包括乘客信息、火车信息、座位信息等。可以使用链表来存储订单信息。
综上所述,我们可以设计出如下的数据结构:
struct Train {
int id; // 火车编号
char start[20]; // 始发站
char end[20]; // 终点站
char depart_time[20]; // 出发时间
char arrive_time[20]; // 到达时间
int seats; // 座位数
int price; // 票价
};
struct Passenger {
char name[20]; // 姓名
char id_card[20]; // 身份证号
char booking_time[20]; // 订票时间
int seat_no; // 座位号
struct Passenger *next; // 下一个乘客
};
struct Order {
struct Train train; // 火车信息
struct Passenger passenger; // 乘客信息
int seat_no; // 座位号
struct Order *next; // 下一个订单
};
int seats[100][100]; // 座位信息,100 表示最大火车数,100 表示每趟火车最大座位数
其中,seats 数组的每个元素表示一个座位的状态,0 表示空闲,1 表示已经被预订。
阅读全文