井字棋判定是否获胜

井字棋判定是否获胜

题目

给定一个二维数组board,代表棋盘,其中元素为1的代表是当前玩家的棋子,0表示没有棋子,-1代表是对方玩家的棋子。当一方棋子在横竖斜方向上有连成排的及获胜(及井字棋规则),返回当前玩家是否胜出

代码_JAVA

import java.util.*;
/*
给定一个二维数组board,代表棋盘,其中元素为1的代表是当前玩家的棋子,
0表示没有棋子,-1代表是对方玩家的棋子。
当一方棋子在横竖斜方向上有连成排的及获胜(及井字棋规则),返回当前玩家是否胜出
*/
public class Board {
   
    public boolean checkWon(
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
判断井字棋输赢可以使用C语言编写一个函数来实现。以下是一个简单的示例代码: ```c #include <stdio.h> #include <stdbool.h> bool check_winner(char board[3][3], char player) { // Check for horizontal wins for (int row = 0; row < 3; row++) { if (board[row][0] == player && board[row][1] == player && board[row][2] == player) { return true; } } // Check for vertical wins for (int col = 0; col < 3; col++) { if (board[0][col] == player && board[1][col] == player && board[2][col] == player) { return true; } } // Check for diagonal wins if (board[0][0] == player && board[1][1] == player && board[2][2] == player) { return true; } if (board[0][2] == player && board[1][1] == player && board[2][0] == player) { return true; } return false; } int main() { char board[3][3] = { {'X', 'O', 'O'}, {'X', 'X', 'O'}, {'O', 'X', 'X'} }; if (check_winner(board, 'X')) { printf("X is the winner!\n"); } else if (check_winner(board, 'O')) { printf("O is the winner!\n"); } else { printf("No winner yet.\n"); } return 0; } ``` 在上面的示例代码中,我们定义了一个 `check_winner` 函数,它接受一个二维字符数组 `board` 和一个字符 `player` 作为参数,表示当前玩家。该函数会遍历整个棋盘,检查是否存在横向、纵向或对角线上连续三个相同的棋子,如果有,就返回 `true`,表示当前玩家获胜。否则,返回 `false`,表示当前没有胜者。 在 `main` 函数中,我们定义了一个包含已下好的棋子的棋盘数组,然后调用 `check_winner` 函数来检查是否存在获胜者,如果有,就输出胜者的信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值