题解 | #井字棋#

井字棋

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

#include <stdio.h>
#include <stdbool.h>

#define ROW 3
#define COL 3
int main() {
    char arr[ROW][COL] = {0};
    bool flag = false;
    // 输入棋子
    for (int i = 0; i < ROW; i++)
    {
        for (int j = 0; j < COL; j++)
        {
            scanf("%c", *(arr + i) + j);
            // 吸收换行符
            getchar();
        }
    }
    // 对角线
    if (arr[0][0] == arr[1][1] && arr[1][1] == arr[2][2] && 'O' != arr[0][0])
        {
            if ('K' == arr[1][1])
            {
                flag = true;
                printf("KiKi wins!\n");
            }
            else
            {
                flag = true;
                printf("BoBo wins!\n");
            }
        }
        // 对角线
        else if (arr[1][1] == arr[0][2] && arr[0][2] == arr[2][0] && 'O' != arr[1][1])
        {
            if ('K' == arr[1][1])
            {
                flag = true;
                printf("KiKi wins!\n");
            }
            else
            {
                flag = true;
                printf("BoBo wins!\n");
            }
        }
    for (int i = 0; i < ROW; i++)
    {
        // 行相等
        if (arr[i][0] == arr[i][1] && arr[i][2] == arr[i][1] && 'O' != arr[i][0])
        {
            if ('K' == arr[i][0])
            {
                flag = true;
                printf("KiKi wins!\n");
                break;
            }
            else
            {
                flag = true;
                printf("BoBo wins!\n");
                break;
            }
        }
        // 列相等
        else if (arr[0][i] == arr[1][i] && arr[2][i] == arr[0][i] && 'O' != arr[0][i])
        {
            if ('K' == arr[0][i])
            {
                flag = true;
                printf("KiKi wins!\n");
                break;
            }
            else
            {
                flag = true;
                printf("BoBo wins!\n");
                break;
            }
        }
    }
    if (!flag)
    {
        printf("No winner!\n");
    }
    
    return 0;
}

全部评论

相关推荐

牛客38347925...:9,2学生暑期实习失利开始投小厂,给这群人整自信了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
05-28 12:15
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-29 17:30
找实习找着找着就要进入7月了,马上秋招也要开始了,找实习还有意义吗?
绝迹的星:有面就面, 没面上就当日薪4位数大佬免费培训, 面上了再考虑要不要实习
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务