知识大全 Java中的“五子棋”游戏程序

Posted 结束

篇首语:今日长缨在手,何时缚住苍龙。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java中的“五子棋”游戏程序相关的知识,希望对你有一定的参考价值。

Java中的“五子棋”游戏程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  import java util Scanner;

  public class FiveChessGame

  private int temp;

  private String[][] String ;//注意在这里不能定义为char型不然打印的数字

  ////////////////////////////

  public FiveChessGame()

  System out println( please input the line number );

  Scanner sc=new Scanner(System in);

  this temp=sc nextInt();

  String =new String[temp][temp];

  for(int i= ;i<temp;i++)

  for(int j= ;j<temp;j++)

  String [i][j]= * ;//注意在这里不能定义为char型不然打印的数字

  

  

  System out print( \\t );

  for(int i= ;i<temp;i++)

  System out print(i);

  System out print( \\t );

  

  System out println();

  for(int i= ;i<temp;i++)

  System out print(i);//注意在这里的格式不能写成System out print(i+ \\t );不然从 打印

  System out print( \\t );

  for(int j= ;j<temp;j++)

  System out print(String [i][j]+ \\t );

  

  System out println();

  

  

  ////////////////////

  public int getline()

  return this temp;

  

  ///////////////////////

  public String[][] getString()

  return this String ;

  

  

  /////////////////////////////////////////////////////////////////////////////////////////////////////////////

  import java util *;

  public class FiveChessPlayers

  private String name;

  public static FiveChessGame fcg=new FiveChessGame();

  //////////////////////

  public FiveChessPlayers()//玩多少行的游戏

  System out println( please input player s name );

  Scanner sc=new Scanner(System in);

  this name=sc next();

  

  ///////////////////

  public String getName()

  return this name;

  

  ////////////////////////////////

  public void play(String str )//the player could play the chess

  Scanner sc=new Scanner(System in);

  int x y;

  while(true)

  System out println( please input your chess );

  x=sc nextInt();

  y=sc nextInt();

  if(x>=fcg getline()||y>=fcg getline())

  System out println( your input is error );

  continue;

  

  if(fcg getString()[x][y]== * )

  fcg getString()[x][y]=str ;

  break;

  else

  System out println( you coudl n put your chess here );

  continue;

  

  

  

  

  ////////////////////////////////////////////////////////////////////////////////////////////////

  import java util *;

  public class TestChess

  private FiveChessPlayers f ;

  private FiveChessPlayers f ;

  public TestChess()

  f =new FiveChessPlayers();

  f =new FiveChessPlayers();

  

  ///////////////////////////////////////////////////////////////////////////

  public void display()

  System out print( \\t );

  for(int i= ;i<FiveChessPlayers fcg getline();i++)

  System out print(i);

  System out print( \\t );

  

  System out println();

  for(int i= ;i<FiveChessPlayers fcg getline();i++)

  System out print(i);//注意在这里的格式不能写成System out print(i+ \\t );不然从 打印

  System out print( \\t );

  for(int j= ;j<FiveChessPlayers fcg getline();j++)

  System out print(FiveChessPlayers fcg getString()[i][j]+ \\t );

  

  System out println();

  

  

  //////////////////////////////////////////////////////////////////////////////

  public void putChess(String tem )

  if(tem equals( @ ))

  

  f play( @ );

  

  if(tem equals( # ))

  

  f play( # );

  

  

  /////////////////////////////////////////////////////////

  public   void victory()

  String str =new String();

  String str = @@@@@ ;

  ////////////////////////////////////

  int X= Y= ;//用来记录每次查找到的 @ 字符的数组下标 从两个for循环里导出来

  int k= ;int j= ;//注意首次的控制条件的建立 j为- 可以使第二个for检测首次从下标 开始

  ///////////////////////////////////

  while(true)

  

  LABEL:for(;k<FiveChessPlayers fcg getline();k++)//添加标签 要注意标签的用法

  for(j=(j+ )%FiveChessPlayers fcg getline();j<FiveChessPlayers fcg getline();j++)

  //注意在这里的这个表达式的写法 可以在一次寻找不满足时下一次从数组的下一个位置开始

  if(FiveChessPlayers fcg getString()[k][j] equals( @ ))

  X=k;

  Y=j;

  break LABEL;//每找到一个相同字符则跳出

  else

  System out println(k+ 行 );

  System out println(j+ 列 );

  //             continue;//多余

  

  

  

  //        System exit( );//调试语句 退出虚拟机

  if(k<FiveChessPlayers fcg getline()&j<FiveChessPlayers fcg getline())

  

  for(int i= ;i< ;i++)

  if(X<FiveChessPlayers fcg getline()&Y<(FiveChessPlayers fcg getline() ))//遍历列

  str +=FiveChessPlayers fcg getString()[X][Y+i];

  if(i!= )

  continue;

  if(i== )

  System out println( 安列取 +str );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//结束退出虚拟机

  else

  str = ;

  

  

  

  

  for(int i= ;i< ;i++)

  if((X+ )<FiveChessPlayers fcg getline()&(Y+ )<FiveChessPlayers fcg getline())//四十五度遍历

  str +=FiveChessPlayers fcg getString()[X+i][Y+i];

  if(i!= )

  continue;

  if(i== )

  System out println( 四十五度向前取 +str );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//胜利结束游戏

  else

  str = ;

  

  

  

  

  for(int i= ;i< ;i++)

  if((X+ )<FiveChessPlayers fcg getline()&Y<FiveChessPlayers fcg getline())//行遍历

  str +=FiveChessPlayers fcg getString()[X+i][Y];

  if(i!= )

  continue;

  if(i== )

  System out println( 安行取 +str );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//如上

  else

  str = ;

  

  

  

  

  for(int i= ;i< ;i++)

  if((X+ )<FiveChessPlayers fcg getline()&(Y )>= )

  str +=FiveChessPlayers fcg getString()[X+i][Y i];

  if(i!= )

  continue;

  if(i== )

  System out println( 四十五度向后取 +str );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//如上

  else

  str = ;

  

  

  //        str +=f String [X+i][Y+i];//注意对比写法

  //        continue;

  //        str = +f String [X+i][Y+i];//注意错误的写法 不然每次覆蓋前一次的串累加值

  //        continue;

  

  

  

  //////////////////////////////////////////////////////////////////////////////

  if(str == &k<FiveChessPlayers fcg getline()&j<FiveChessPlayers fcg getline())

  j++;

  continue ;

  else

  break;

  

  

  

  ////////////////////////////////////////////////////////////////////

  public   void victory ()

  String str =new String();

  String str = ##### ;

  ////////////////////////////////////

  int X= Y= ;

  int k= ;int j= ;

  while(true)

  

  LABEL:for(;k<FiveChessPlayers fcg getline();k++)//添加标签 要注意标签的用法

  for(j=(j+ )%FiveChessPlayers fcg getline();j<FiveChessPlayers fcg getline();j++)

  if(FiveChessPlayers fcg getString()[k][j] equals( # ))

  X=k;

  Y=j;        System out println(FiveChessPlayers fcg getString()[k][j]);

  break LABEL;

  else

  System out println(k+ ****** );

  System out println(j);

  

  

  

  ///////////////////////////////////////////////

  for(int i= ;i< ;i++)

  if(X<FiveChessPlayers fcg getline()&Y<(FiveChessPlayers fcg getline() ))//遍历列

  str +=FiveChessPlayers fcg getString()[X][Y+i];

  if(i!= )

  continue;

  if(i== )

  System out println(str );

  System out println( );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//结束

  else

  str = ;

  

  

  

  

  for(int i= ;i< ;i++)

  if((X+ )<FiveChessPlayers fcg getline()&(Y+ )<FiveChessPlayers fcg getline())//四十五度遍历

  str +=FiveChessPlayers fcg getString()[X+i][Y+i];

  if(i!= )

  continue;

  if(i== )

  System out println(str );

  System out println( );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//结束

  else

  str = ;

  

  

  

  

  for(int i= ;i< ;i++)

  if((X+ )<FiveChessPlayers fcg getline()&Y<FiveChessPlayers fcg getline())//行遍历

  str +=FiveChessPlayers fcg getString()[X+i][Y];

  if(i!= )

  continue;

  if(i== )

  System out println(str );

  System out println( );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//结束

  else

  str = ;

  

  

  

  

  for(int i= ;i< ;i++)

  if((X+ )<FiveChessPlayers fcg getline()&(Y )>= )

  str +=FiveChessPlayers fcg getString()[X+i][Y i];

  if(i!= )

  continue;

  if(i== )

  System out println(str );

  System out println( );

  if(str equals(str ))

  System out println(f getName()+ is the winner );

  System exit( );//结束

  else

  str = ;

  

  

  //         str +=f String [X+i][Y+i];

  //         continue;

  //         str = +f String [X+i][Y+i];//注意错误的写法 不然每次覆蓋前一次的串累加值

  //         continue;

  

  

  //////////////////////////////////////////////////////////////////////////////

  if(str == &k<FiveChessPlayers fcg getline()&j<FiveChessPlayers fcg getline())

  j++;

  continue ;

  else

  break;

  

  

  

  ////////////////////////////////////////

  public static void main(String[] args)

  TestChess tc=new TestChess();

  boolean b =true;

  while(b )

  tc putChess( @ );

  tc victory();

  tc display();

  tc putChess( # );

  tc display();

  tc victory ();

  Scanner sc=new Scanner(System in);

  System out println( if you like to continue input true or exit input false );

  b =sc nextBoolean();

  if(!b )

  System out println( wele to use ! );

  break;

  

  

  

cha138/Article/program/Java/hx/201311/25560

相关参考

知识大全 Java中的同步——示例程序

Java中的同步——示例程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  前面说到了Java中

知识大全 Java程序中的多线程

Java程序中的多线程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一为什么会排队等待?  下

知识大全 Java 程序中的多线程(四)

Java程序中的多线程(四)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作者NeelVKum

知识大全 Java 程序中的多线程(二)

Java程序中的多线程(二)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作者NeelVKum

知识大全 Java 程序中的多线程(一)

Java程序中的多线程(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  作者NeelVKum

知识大全 谈谈各种JAVA中的调用程序方式

谈谈各种JAVA中的调用程序方式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  很多书籍都说Ja

知识大全 Java数据库程序中的存储过程设计

Java数据库程序中的存储过程设计  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文阐述了怎么

知识大全 Java 应用程序中的按值传递语义

Java应用程序中的按值传递语义  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  几个月前deve

知识大全 用内嵌类减少 JAVA 程序设计中的混乱

用内嵌类减少JAVA程序设计中的混乱  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  实体bean

知识大全 多线程在JAVA ME应用程序中的使用

多线程在JAVAME应用程序中的使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  多线程技术是