2、模拟火车售票系统。 提示:假设客车的坐位数是10行7列,使用一个二维数组记录客车售票系统中的所有座位号,并在每个座位号上都显示“【有票】”,然后用户输入一个坐标位置,按回车键,即可将该座位号显示为“【已售】”。
时间: 2024-03-26 11:38:14 浏览: 93
下面是一个简单的火车售票系统的 Java 实现,其中使用了一个二维数组来记录所有座位的状态,初始状态都为“【有票】”,当用户购买票时,将该座位号的状态更新为“【已售】”。
```java
import java.util.Scanner;
public class TrainTicketSystem {
static final int ROWS = 10; // 客车的行数
static final int COLS = 7; // 客车的列数
static String[][] seats = new String[ROWS][COLS]; // 座位信息
public static void main(String[] args) {
// 初始化座位信息
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
seats[i][j] = "【有票】";
}
}
Scanner sc = new Scanner(System.in);
while (true) {
// 输出座位信息
System.out.println("===== 火车座位信息 =====");
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
System.out.print(seats[i][j] + " ");
}
System.out.println();
}
// 用户输入购票信息
System.out.println("请输入要购买的座位号(格式:行 列,如:2 3),输入-1结束:");
int row = sc.nextInt();
if (row == -1) {
break;
}
int col = sc.nextInt();
// 判断座位号是否合法
if (row < 1 || row > ROWS || col < 1 || col > COLS) {
System.out.println("输入的座位号不合法!");
continue;
}
// 判断座位是否已被购买
if (seats[row-1][col-1].equals("【已售】")) {
System.out.println("该座位已被购买,请选择其他座位!");
continue;
}
// 购票成功,更新座位信息
seats[row-1][col-1] = "【已售】";
System.out.println("购票成功!");
}
sc.close();
}
}
```
在上面的代码中,我们使用了一个二维数组 `seats` 来存储每个座位的状态,初始状态都为“【有票】”。在用户购买票时,我们需要先输入座位号,然后判断该座位是否已被购买或座位号是否合法,最后更新座位状态。
阅读全文