java简单练习-五子棋
程序员文章站
2022-07-27 20:29:19
使用二维数组,实现五子棋功能 //使用二维数组,实现五子棋功能. //⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑如下图 public static void main(String[] args) { String[][] a = new String[15][15]; String[] c = {"⒈", "⒉", "⒊", "⒋", "⒌", "⒍", "⒎", "⒏", "⒐", "⒑", "⒒", "⒓", "⒔", "⒕", "⒖"}; //初始化...
使用二维数组,实现五子棋功能
//使用二维数组,实现五子棋功能.
//⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑如下图
public static void main(String[] args) {
String[][] a = new String[15][15];
String[] c = {"⒈", "⒉", "⒊", "⒋", "⒌", "⒍", "⒎", "⒏", "⒐", "⒑", "⒒", "⒓", "⒔", "⒕", "⒖"};
//初始化棋盘
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a.length; j++) {
//若判断为棋盘最后一列,则需要将行号c[i]赋值给对应位置,即在最后一列给出行号
//若判断为棋盘最后一行,则需要将列号c[i]赋值给对应位置,即在最后一行给出列号
//其余位置放置为"十"即可
if (j == a.length - 1) {
a[i][a.length - 1] = c[i];
} else if (i == a.length - 1) {
a[a.length - 1][j] = c[j];
} else {
a[i][j] = "十";
}
System.out.print(a[i][j]);
}
System.out.println();
}
//双方开始下棋,每下一颗棋子都必须同步更新一次棋盘.
while (true) {
Scanner input = new Scanner(System.in);
for (int i = 0; i <= 1; i++) {
//黑棋先走,即奇数时为黑方下棋,偶数时为白方下棋.
if (i % 2 == 0) {
System.out.println("请黑棋下,他的位置是:");
} else {
System.out.println("请白棋下,他的位置是:");
}
int x = input.nextInt();
int y = input.nextInt();
//判断用户目前输入的位置是否有棋子,若已有棋子则需要重新选择位置.
if (a[x - 1][y - 1] == "★" || a[x - 1][y - 1] == "☆") {
System.out.println("此处已有棋子,请重新选择位置");
}
//黑方下的棋子输出显示为"★",白方下的棋子输出显示为"☆".
if (i % 2 == 0) {
a[x - 1][y - 1] = "★";
} else {
a[x - 1][y - 1] = "☆";
}
//更新打印棋盘.
for (int j = 0; j < a.length; j++) {
for (int k = 0; k < a.length; k++) {
System.out.print(a[j][k]);
}
System.out.println();
}
}
}
}
总结:
用户的输赢功能暂时未实现,还需继续完善.
本文地址:https://blog.csdn.net/crraxx/article/details/109816423