当前位置: 首页 > 工具软件 > Bobo > 使用案例 >

KiKi和BoBo玩 “井”字棋。也就是在九宫格中,只要任意行、列,或者任意对角线上面出现三个连续相同的棋子,就能获胜。请根据棋盘状态,判断当前输赢。

方兴旺
2023-12-01

输入描述:

三行三列的字符元素,代表棋盘状态,字符元素用空格分开,代表当前棋盘,其中元素为K代表KiKi玩家的棋子,为O表示没有棋子,为B代表BoBo玩家的棋子。

输出描述:

如果KiKi获胜,输出“KiKi wins!”;
如果BoBo获胜,输出“BoBo wins!”;
如果没有获胜,输出“No winner!”。

示例1

输入:

K O B
O K B
B O K

输出:

KiKi wins!
#include <stdio.h>

int main() 
{
    char ch[10][10]={0};
    int i=0,j=0;
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {
            scanf(" %c",&ch[i][j]);
        }
    }
    for(i=0;i<3;i++)
    {
        
           if(ch[i][0]==ch[i][1]&&ch[i][2]==ch[i][1])
           {
                if(ch[i][0]=='K')
                {
                    printf("KiKi wins!");
                    return 0;
                }
                else if(ch[i][0]=='B')
                {
                    printf("BoBo wins!");
                    return 0;
                }
           }
    }
    for(j=0;j<3;j++)
    {
           if(ch[0][j]==ch[1][j]&&ch[2][j]==ch[1][j])
           {
                if(ch[0][j]=='K')
                {
                    printf("KiKi wins!");
                    return 0;
                }
                else if(ch[0][j]=='B')
                {
                    printf("BoBo wins!");
                    return 0;
                }
           }
    }

      if(ch[0][0]==ch[1][1]&&ch[0][0]==ch[2][2])
    {
        if(ch[0][0]=='K')
            {
                printf("KiKi wins!");
                return 0;
            }
            else if(ch[0][0]=='B')
            {
                printf("BoBo wins!");
                return 0;
            }
    }
     if(ch[0][2]==ch[1][1]&&ch[0][2]==ch[2][0])
    {
        if(ch[0][2]=='K')
            {
                printf("KiKi wins!");
                return 0;
            }
            else if(ch[0][2]=='B')
            {
                printf("BoBo wins!");
                return 0;
            }
    }
    printf("No winner!");
    return 0;
}

 类似资料: