题解 | #井字棋#

井字棋

https://www.nowcoder.com/practice/0375c1d206ef48a3894f72aa07b2fdde

#include <stdio.h>

int main() {
    char arr[3][3];
    int i = 0;
    int j = 0;
    for(i = 0; i < 3; i++)
    {
        for(j = 0; j < 3; j++)
        {
            scanf("%c ",*(arr+i)+j);

        }
    }
    if(arr[0][0] == arr[1][1] && arr[1][1]== arr[2][2])
    {
        if(arr[0][0] == 'K')
        {
            printf("KiKi wins!\n");
            return 0;
        }
        else if(arr[0][0] == 'B')
        {
            printf("BoBo wins!\n");
            return 0;
        }
    }
    if(arr[0][2] == arr[1][1] && arr[1][1] == arr[2][0])
    {
        if(arr[1][1] == 'K')
        {
            printf("KiKi wins!\n");
            return 0;
        }
        else if(arr[1][1] == 'B')
        {
            printf("BoBo wins!\n");
            return 0;
        }
    }
    //行
    for(i = 0; i < 3; i++)
    {
        if(arr[i][0] == arr[i][1] && arr[i][1] == arr[i][2])
        {
            if(arr[i][0] == 'K')
            {
                printf("KiKi wins!\n");
                return 0;
            }
            else if(arr[1][1] == 'B')
            {
                printf("BoBo wins!");
                return 0;
             }
        }
    }
    //列
    for(j = 0; j < 3; j++)
    {
        if(arr[0][j] == arr[1][j] && arr[1][j] == arr[2][j])
        {
            if(arr[0][j] == 'K')
            {
                printf("KiKi wins!\n");
                return 0;
            }
            else if(arr[0][j] == 'B')
            {
                printf("BoBo wins!");
                return 0;
             }
        }
    }
    printf("No winner!\n");
    return 0;
}

全部评论
首先我们先判断一连串(3个字符)是否是一样的,如果是一样的我们再来判断其中的字符是那个
点赞 回复 分享
发布于 08-21 10:17 福建

相关推荐

11-11 14:21
西京学院 C++
无敌混子大王:首先一点,不管学校层次怎么样,教育经历放在第一页靠上位置,第一页看不到教育经历,hr基本直接扔掉了
点赞 评论 收藏
分享
11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务