📄 tictactoe.cpp
字号:
#include <iostream>
#include <cstdlib>
using namespace std;
const int ROWS=3;
const int COLS=3;
int row=0,col=0;
int returnVal = 0;
void enterValue(char [][COLS], int, int, bool);
int checkWin(char [][COLS], int);
int main()
{
char a[3][3] = { ' ',' ',' ',' ',' ',' ',' ',' ',' ' };
bool playerNum = 0;
for (int i = 0; i<=2; i++)
{
for (int j = 0; j<=2; j++)
{
cout << "[" << a[i][j] << "]";
if (j==2)
{
cout << endl;
}
}
}
enterValue(a, ROWS, 9, playerNum);
}
void enterValue(char a [][COLS], int b, int c, bool d)
{
if (c!=0)
{
if (d == 0)
{
d = 1;
cout << "Player 1 Enter your Position: " ;
cin >> row >> col;
cout << endl;
if (a[row-1][col-1]==' ')
{
a[row-1][col-1]='X';
}
else
{
cout << "sorry";
}
if (c<=7)
{
returnVal = checkWin(a, ROWS);
}
if (returnVal == 0)
{
system("CLS");
}
for (int k = 0; k<=2; k++)
{
for (int l = 0; l<=2; l++)
{
cout << "[" << a[k][l] << "]";
if (l==2)
{
cout << endl;
}
}
}
if (returnVal == 0)
{
enterValue(a, ROWS, c-1, d);
}
}
else if (d == 1)
{
d = 0;
cout << "Player 2 Enter your Position: " ;
cin >> row >> col;
cout << endl;
if (a[row-1][col-1]==' ')
{
a[row-1][col-1]='O';
}
else
{
cout << "Sorry" << endl;
}
if (c<=7)
{
returnVal = checkWin(a, ROWS);
}
if (returnVal == 0)
{
system("CLS");
}
for (int k = 0; k<=2; k++)
{
for (int l = 0; l<=2; l++)
{
cout << "[" << a[k][l] << "]";
if (l==2)
{
cout << endl;
}
}
}
if (returnVal == 0)
{
enterValue(a, ROWS, c-1, d);
}
}
}
}
int checkWin(char a [][COLS], int b)
{
for (int i = 0; i<b; i++)
{
if (a[i][0] == a[i][1] && a[i][0] == a[i][2])
{
if (a[i][0] != ' ')
{
cout << "Game Over. Player ";
if (a[i][0]=='X')
{
cout << "One (X) wins" << endl;
}
else if (a[i][0]=='O')
{
cout << "Two (O) wins" << endl;
}
return 1;
}
else
return 0;
}
}
for (int i = 0; i<b; i++)
{
if (a[0][i] == a[1][i] && a[0][i] == a[2][i])
{
if (a[0][i]!=' ')
{
cout << "Game Over. Player ";
if (a[0][i]=='X')
{
cout << "One (X) wins" << endl;
}
else if (a[0][i]=='O')
{
cout << "Two (O) wins" << endl;
}
return 1;
}
else
return 0;
}
}
if (a[0][0] == a[1][1] && a[0][0] == a[2][2])
{
if (a[0][0] != ' ')
{
cout << "Game Over. Player ";
if (a[1][1]=='X')
{
cout << "One (X) wins" << endl;
}
else if (a[1][1]=='O')
{
cout << "Two (O) wins" << endl;
}
return 1;
}
else
return 0;
}
else if (a[0][2] == a[1][1] && a[0][2] == a[2][0])
{
if (a[0][2] != ' ')
{
cout << "Game Over. Player ";
if (a[1][1]=='X')
{
cout << "One (X) wins" << endl;
}
else if (a[1][1]=='O')
{
cout << "Two (O) wins" << endl;
}
return 1;
}
else
return 0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -