1.说明:由于本文只是对初学C语言的人学习,所以将不会涉及任何算法,电脑将采用随机下子的方式。
2.主要部分:
(1)菜单
(2)打印棋盘
(3)玩家下子
(4)电脑下子
(5)判断输赢
二.实现代码及分析
(1)菜单的制作
运用do…while循环调用菜单,根据用户选择实现玩游戏和退出游戏
(2)棋盘的初始化和打印
棋盘采用标准的15*15的格子,我们可以宏定义ROW和COL分别为15和15来表示行和列。
分别封装两个函数对棋盘进行初始化和打印
初始化:(这里将棋盘初始化为空格,可初始化为其他)
打印棋盘:
效果如下:
(3)玩家下子
void PlayerMove(char board[ROW][COL], int row, int col) {
int x, y;
while (1) {
printf(“玩家走:\n”);
printf(“请输入坐标:\n”);
scanf("%d %d", &x, &y);
if (x >= 1 && x <= row && y >= 1 && y <= col) {
if (board[x - 1][y - 1] == ’ ') {
board[x - 1][y - 1] = ‘O’;
break;
}
else {
printf(“坐标被占用,请重新输入\n”);
}
}
else {
printf(“坐标非法,请重新输入\n”);
}
}
}}
玩家下子主要采用的思路是,判断棋盘上是否有子,已经输入的坐标是否合法。
(4)电脑下子
void ComputerMo