这种井字棋,我是考古发现的,编写时前后隔了几天,思路有些混乱,对于凌乱的代码请不要介意
规则:
1.↑↓←→控制移动,【空格】放下棋子
2.棋盘为3 * 3的3 * 3的九宫格的九宫格(好绕啊)
3.当小型九宫格中有三颗你的棋子连成一线,那么这个小的九宫格就属于你的棋子格子,当大型九宫格中的格子连成一线时,你就赢了
4.你所可以下的格子与棋盘的位置关系,是相对应于对手所下的棋子与他所下的格子的关系,当你所可以下的格子已被占据时,你可以在整个棋盘里未被占据或未下棋子的地方下棋
视频教学【免费】
#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h>
#include <ctime>
int a[4][4][4][4];
int winer[4][4];
int x1, yy1, x2, y2;
int now;
void print(int i, int j, int k, int l) {
if(i == x1 && j == yy1 && k == x2 && l == y2) printf("+");
else if(winer[i][j] == 1) printf("①");
else if(winer[i][j] == 2) printf("②");
else if(a[i][j][k][l] == 1) printf("●");
else if(a[i][j][k][l] == 2) printf("○");
else printf("㊣");
}
void put_map() {
printf("┏━━┳━━┳━━┓┏━━┳━━┳━━┓┏━━┳━━┳━━┓\n┃");
print(1, 1, 1, 1);
printf("┃");
print(1, 1, 1, 2);
printf("┃");
print(1, 1, 1, 3);
printf("┃┃");
print(1, 2, 1, 1);
printf("┃");
print(1, 2, 1, 2);
printf("┃");
print(1, 2, 1, 3);
printf("┃┃");
print(1, 3, 1, 1);
printf("┃");
print(1, 3, 1, 2);
printf("┃");
print(1, 3, 1, 3);
printf("┃\n");
printf("┣━━╋━━╋━━┃┃━━╋━━╋━━┃┃━━╋━━╋━━┫\n┃");
print(1, 1, 2, 1);
printf("┃");
print(1, 1, 2, 2);
printf("┃");
print(1, 1, 2, 3);
printf("┃┃");
print(1, 2, 2, 1);
printf("┃");
print(1, 2, 2, 2);
printf("┃");
print(1, 2, 2, 3);
printf("┃┃");
print(1, 3, 2, 1);
printf("┃");
print(1, 3, 2, 2);
printf("┃");
print(1, 3, 2, 3);
printf("┃\n");
printf("┣━━╋━━╋━━┃┃━━╋━━╋━━┃┃━━╋━━╋━━┫\n┃");
print(1, 1, 3, 1);
printf("┃");
print

这是一篇关于使用C++编程实现井字棋游戏的文章。游戏规则包括:玩家通过箭头键移动,空格键放置棋子;棋盘为3*3的九宫格;当小型九宫格内连成一线,该区域归属玩家;大型九宫格连成一线则获胜。文章还提到有免费的视频教学资源。
最低0.47元/天 解锁文章
5335

被折叠的 条评论
为什么被折叠?



