zoukankan      html  css  js  c++  java
  • 游戏:井字游戏(java)

    能够实时输出,不允许重复落子,有判断机制,使用坐标下棋。

     1 package 井字游戏;
     2 import java.util.*;
     3 
     4 public class mine {
     5     public static void main(String[] args) {
     6         char[][] array = {{' ',' ',' '},{' ',' ',' '},{' ',' ',' '}};
     7         Scanner input = new Scanner(System.in);
     8         int x,y;
     9         output(array);
    10         for(int i=0;i<9;i++) {
    11             System.out.print("请输入棋子的坐标x和y:");
    12             do {
    13             x=input.nextInt();
    14             y=input.nextInt();
    15             }while(x<1||x>3||y<1||y>3);
    16             x--;y--;
    17             if(array[x][y]!=' ') {
    18                 System.out.println("已经有棋子了,请重新选择!!");
    19                 do {
    20                     x=input.nextInt();
    21                     y=input.nextInt();
    22                 }while(x<1||x>3||y<1||y>3);
    23                 x--;y--;
    24             }
    25             if(i%2==0)
    26                 array[x][y]='x';
    27             else
    28                 array[x][y]='o';
    29             output(array);
    30             switch(judge(array)) {
    31             case 1:System.out.println("“x”棋子选手已经获胜!");i=9;break;
    32             case 2:System.out.println("“o”棋子选手已经获胜!");i=9;break;
    33             }
    34             if(i!=9) {
    35                 if(i%2==0)
    36                     System.out.print("下一步是“o”棋子:");
    37                 else
    38                     System.out.print("下一步是“x”棋子:");
    39             }
    40         }
    41     }
    42     static void output(char[][] array) {
    43         System.out.println("-------------");
    44         System.out.printf("| %c | %c | %c |
    ", array[0][0],array[0][1],array[0][2]);
    45         System.out.println("-------------");
    46         System.out.printf("| %c | %c | %c |
    ", array[1][0],array[1][1],array[1][2]);
    47         System.out.println("-------------");
    48         System.out.printf("| %c | %c | %c |
    ", array[2][0],array[2][1],array[2][2]);
    49         System.out.println("-------------");
    50     }
    51     static int judge(char[][] array) {
    52         for(int i=0;i<3;i++) {
    53             if(array[i][0]==array[i][1]&&array[i][1]==array[i][2]&&array[i][2]=='x')
    54                 return 1;
    55             if(array[0][i]==array[1][i]&&array[1][i]==array[2][i]&&array[2][i]=='x')
    56                 return 1;
    57         }
    58         if(array[0][0]==array[1][1]&&array[1][1]==array[2][2]&&array[2][2]=='x')
    59             return 1;
    60         if(array[0][2]==array[1][1]&&array[1][1]==array[2][0]&&array[2][0]=='x')
    61             return 1;
    62         for(int i=0;i<3;i++) {
    63             if(array[i][0]==array[i][1]&&array[i][1]==array[i][2]&&array[i][2]=='o')
    64                 return 2;
    65             if(array[0][i]==array[1][i]&&array[1][i]==array[2][i]&&array[2][i]=='o')
    66                 return 2;
    67         }
    68         if(array[0][0]==array[1][1]&&array[1][1]==array[2][2]&&array[2][2]=='o')
    69             return 2;
    70         if(array[0][2]==array[1][1]&&array[1][1]==array[2][0]&&array[2][0]=='o')
    71             return 2;
    72         return 0;
    73     }
    74 
    75 }
  • 相关阅读:
    一个日志框架的开源,有些不错的创意。
    发现vs2005一个bug!庆祝一下!
    (新手文)偶说说什么是IoC (反向注入、依赖注入)
    数据库移植到sql server遇到的问题。
    Pixysoft.Framework.Configuration 开发实录
    Pixysoft.Framework.Noebe.Json 开发实录
    介绍一下我设计的工作流引擎,欢迎拍砖仍鸡蛋
    用mysql相当多问题。不是说开源不好,可是拜托,争争气吧
    设计之路——我的成果小报告
    黑客攻击:20090921 23:41:17:171
  • 原文地址:https://www.cnblogs.com/ncoheart/p/8981286.html
Copyright © 2011-2022 走看看