相关推荐

井字棋代码部分:#include#include#define MAX_SIZE 3#define TOTAL_CELLS (MAX_SIZE * MAX_SIZE)int main() {    // 定义棋盘和计数数组    char p[MAX_SIZE][MAX_SIZE];    int k[8] = {0}; // K的计数    int m[8] = {0}; // B的计数    int a = 0, b = 0; // 用于记录获胜情况    // 读取棋盘状态    for (int i = 0; i         for (int j = 0; j             scanf(" %c", &p[i][j]); // 注意添加空格以跳过空白字符        }    }    // 计算K和B的连线数量    for (int i = 0; i         for (int j = 0; j             if (p[i][j] == 'K') {                k[i]++;                k[j + 3]++;            }            if (i == j && p[i][j] == 'K') {                k[6]++;            }            if (i + j == 2 && p[i][j] == 'K') {                k[7]++;            }            if (p[i][j] == 'B') {                m[i]++;                m[j + 3]++;            }            if (i == j && p[i][j] == 'B') {                m[6]++;            }            if (i + j == 2 && p[i][j] == 'B') {                m[7]++;            }        }    }    // 检查是否有获胜者    for (int i = 0; i         if (k[i] == 3) {            a++;        }        if (m[i] == 3) {            b++;        }    }    // 输出结果if (a > 0) {        printf("KiKi wins!\n");} else if (b > 0) {        printf("BoBo wins!\n");    } else {        printf("No winner!\n");    }    return 0;}知识点:1. **宏定义**:使用 `#define` 来定义常量,例如棋盘的最大尺寸和总单元格数。2. **数组操作**:使用二维数组来表示棋盘,并使用一维数组来计数。3. **输入输出**:使用 `scanf` 和 `printf` 函数进行输入输出操作。4. **循环控制**:使用 `for` 循环来遍历棋盘和计数数组。5. **条件判断**:使用 `if` 语句来判断棋盘上的字符和计数条件。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务