c语言火车票售票系统代码
时间: 2023-10-12 18:26:22 浏览: 192
C语言课程设计——火车票订票管理系统(源代码+详细注释).zip
以下是一个简单的C语言火车票售票系统的代码:
```c
#include <stdio.h>
#include <stdbool.h>
#define MAX_SEATS 100 // 火车的最大座位数
int seats[MAX_SEATS]; // 座位数组,0表示空座,1表示已售座位
// 显示菜单并获取用户选择
int get_menu_choice() {
int choice;
printf("请选择操作:\n");
printf("1. 购买票\n");
printf("2. 显示空座位\n");
printf("3. 显示已售座位\n");
printf("4. 退出\n");
printf("请选择:");
scanf("%d", &choice);
return choice;
}
// 显示空座位
void show_empty_seats() {
printf("空座位:");
for (int i = 0; i < MAX_SEATS; i++) {
if (seats[i] == 0) {
printf("%d ", i + 1);
}
}
printf("\n");
}
// 显示已售座位
void show_sold_seats() {
printf("已售座位:");
for (int i = 0; i < MAX_SEATS; i++) {
if (seats[i] == 1) {
printf("%d ", i + 1);
}
}
printf("\n");
}
// 购买票
void buy_ticket() {
int seat_number;
printf("请输入座位号(1-100):");
scanf("%d", &seat_number);
if (seat_number < 1 || seat_number > MAX_SEATS) {
printf("座位号无效!\n");
return;
}
if (seats[seat_number - 1] == 1) {
printf("该座位已售出!\n");
return;
}
seats[seat_number - 1] = 1;
printf("成功购买座位 %d!\n", seat_number);
}
int main() {
int choice;
while (true) {
choice = get_menu_choice();
switch (choice) {
case 1:
buy_ticket();
break;
case 2:
show_empty_seats();
break;
case 3:
show_sold_seats();
break;
case 4:
return 0;
default:
printf("无效的选择!\n");
}
}
return 0;
}
```
这个程序中,我们定义了一个 `seats` 数组来表示火车的座位情况,0 表示空座,1 表示已售座位。然后我们实现了三个功能:显示空座位、显示已售座位和购买票。在 `main` 函数中,我们不断循环显示菜单并根据用户选择执行相应的功能,直到用户选择退出。
阅读全文