Java练习用Java写双人游戏简单四子棋

为了应付Java老师,借鉴了同学思想,自己动手敲了一个四子棋游戏。代码很不规范,为了赶时间。结果写的和C语言一样。源码在本文结尾处

首先看看游戏规则,

游戏规则

 四子棋的棋盘共有6行7列,棋盘是垂直摆放,每名玩者有21只圆形棋子,以不同颜色辨别。两名玩者轮流每次把一只棋子放进棋盘任何未全满的一行中,棋子会占据一行中最底未被占据的位置。两名玩者任何一方先以四只棋子在横,竖或斜方向联成一条直线,便可获胜,游戏亦结束。假如棋盘已完全被棋子填满,但仍未有任何一方成功把四只棋子成一直线,则成为和局。

棋盘

用了一个二维数组6*7的二维数组来构造棋盘。每次选择要下的行号行号即可。

isfour()

用来判断下的棋有没有连成四字,每次下完都判断一次。

judge()

用来判断所下的棋成功与否,即所下位置是否有棋和棋盘是否能放下

主要用了就这么多,只创建了一个类connect类来建立一个四子棋游戏。。。。

package connect;
import java.util.*;

public class connect
{
	public static  void main(String args[])
	{
		int start=0;
	
		int count=0;
		int count_max=42;
		connect_four one=new connect_four();
		
		one.display_board();
	
		do
		{
			System.out.println("请白子先行");
		
			Scanner in=new Scanner(System.in);
			int cow=in.nextInt();
			
			if(one.judge(cow, 1) == 1)
			{
				start=1;count++;
			}
			else
			{
				start=0;
			}
		}
		
		while(start==0);
		one.display_board();
		System.out.println();
		int color=2;
		do
		{
			//one.getcolor();
			
			System.out.println("对手出棋");
			Scanner in=new Scanner(System.in);
			//int raw=in.nextInt();
			int cow=in.nextInt();
			if(one.judge(cow,color)==0)
			{
				System.out.println("出棋失败,请重新出棋");
			}
			else
			{
					count++;
					if(one.is_four(cow, color, 0, 1)==1)
					{
						if(color==1)
							System.out.print("\t\t\t\t圈圈");
						else
							System.out.print("\t\t\t\t叉叉");
						System.out.print("胜出\n");
						one.display_board();
						System.out.println();
						return ;
					}
					if(color==2)color=1;
					else color=2;
			}
			one.display_board();
			
		}
		while(count=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}//二维数            
                                                                                 //组存放
						else return 0;	
			case 1:	 if(a[j]>=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}
						else return 0;
			case 2:	 if(a[j]>=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}
			 			else return 0;
			case 3:	 if(a[j]>=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}
						else return 0;
			case 4:	 if(a[j]>=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}
			 			else return 0;
			case 5:	 if(a[j]>=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}
			 			else return 0;
			case 6:	 if(a[j]>=0) {chessboard_status[a[j]][j]=color;a[j]--;break;}
			 			else return 0;
			default: ;
		}
		return 1;
	}
	public int judge_status(int i,int j)
	{
		if(i>-1&&i-1&&j

     

 

你可能感兴趣的:(Java,学习笔记)