ADD file via upload

main
pjvrmisk8 1 year ago
parent 4917d3d537
commit 35cbb0339c

@ -0,0 +1,172 @@
#include<iostream>
#include<windows.h>
char arr[9] = { ' ',' ',' ',' ',' ',' ',' ',' ',' ' };
void print()
{
std::cout << "井字棋游戏" << std::endl;
std::cout << "+---+---+---+" << std::endl;
std::cout << "| " << arr[0] << " | " << arr[1] << " | " << arr[2] << " |" << std::endl;
std::cout << "+---+---+---+" << std::endl;
std::cout << "| " << arr[3] << " | " << arr[4] << " | " << arr[5] << " |" << std::endl;
std::cout << "+---+---+---+" << std::endl;
std::cout << "| " << arr[6] << " | " << arr[7] << " | " << arr[8] << " |" << std::endl;
std::cout << "+---+---+---+" << std::endl;
}
int main()
{
bool n1{ 0 }, n2{ 0 };
system("cls");
print();
int i{ 1 }, k{};
unsigned long long n;//落棋位置
int a{ 0 }, b{ 0 };//赢局对比
int round{};
std::cout << "请输入想进行的游戏局数:";
std::cin >> round;
for (k = 1; k <= round; ++k)
{
for (i = 1; i <= 9; i = i + 1)
{
if (i % 2 == 1)
{
std::cout << "请玩家一选择落棋位置:";
std::cin >> n;
if (arr[n - 1] != ' '||n>9||n<1)
{
std::cout << "落棋位置错误" << std::endl;
std::cout << "请玩家重新选择落棋位置" << std::endl;
i = i - 1;
continue;
}
else
{
arr[n - 1] = 'X';
}
}
else
{
std::cout << "请玩家二选择落棋位置:";
std::cin >> n;
if (arr[n - 1] != ' '||n>9||n<1)
{
std::cout << "落棋位置错误" << std::endl;
std::cout << "请玩家重新选择落棋位置" << std::endl;
i = i - 1;
continue;
}
else
{
arr[n - 1] = 'O';
}
}
system("cls");
print();
//横
if (arr[0] == arr[1] && arr[1] == arr[2] && arr[2] != ' ')
{
if (arr[0] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
else if (arr[3] == arr[4] && arr[4] == arr[5] && arr[5] != ' ')
{
if (arr[3] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
else if (arr[6] == arr[7] && arr[7] == arr[8] && arr[8] != ' ')
{
if (arr[6] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
else if (arr[0] == arr[3] && arr[3] == arr[6] && arr[6] != ' ')
{
if (arr[0] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
else if (arr[1] == arr[4] && arr[4] == arr[7] && arr[7] != ' ')
{
if (arr[1] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
else if (arr[2] == arr[5] && arr[5] == arr[8] && arr[8] != ' ')
{
if (arr[2] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
//斜
else if (arr[0] == arr[4] && arr[4] == arr[8] && arr[8] != ' ')
{
if (arr[0] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
else if (arr[6] == arr[4] && arr[4] == arr[2] && arr[2] != ' ')
{
if (arr[6] == 'O')
n2 = 1;
else
n1 = 1;
break;
}
}
//单局判断
if (n1 == 1)
++a;
else if (n2 == 1)
++b;
std::cout << "比分对比 玩家1玩家2=" << a << ':' << b << std::endl;
n1 = 0, n2 = 0;
for (i = 0; i < 9; ++i)
arr[i] = ' ';
}
//最终判断
if (a>b)
std::cout << "玩家1 win!!!";
else if (a<b)
std::cout << "玩家2 win!!!";
else
std::cout << "no winner!!!";
}
Loading…
Cancel
Save