#include<bits/stdc++.h>
using namespace std;
int a,b,x,y,p;
string s[100][100];
int main()
{
cout<<"欢迎来到井字棋人人大赛!!!"<<endl;
cout<<"你需要跟另一个人比赛"<<endl;
cout<<"A方棋子是“x”,B方棋子是“o”"<<endl;
cout<<"你需要根据坐标x行、y列来下棋子"<<endl;
cout<<"坐标只能输入数字,否则会出现bug"<<endl;
cout<<"游戏即将开始,祝你们玩得愉快!!!"<<endl;
cout<<endl<<endl;
s[1][1]=" ";
s[1][2]=" ";
s[1][4]=" ";
s[1][6]=" ";
s[2][2]=" ";
s[2][4]=" ";
s[2][6]=" ";
s[3][2]=" ";
s[3][4]=" ";
s[3][6]=" ";
s[4][2]=" ";
s[4][4]=" ";
s[4][6]=" ";
s[1][3]="1";
s[1][5]="2";
s[1][7]="3";
s[2][1]="1";
s[3][1]="2";
s[4][1]="3";
s[2][3]="_";
s[2][5]="_";
s[2][7]="_";
s[3][3]="_";
s[3][5]="_";
s[3][7]="_";
s[4][3]="_";
s[4][5]="_";
s[4][7]="_";
for(int i=1;i<=4;i++)
{
for(int j=1;j<=7;j++)cout<<s[i][j];
cout<<endl;
}
cout<<endl;
for(;;)
{
cout<<"轮到A方下棋子,请输入坐标"<<endl<<endl;
cin>>a>>b;
if(a==1)x=a+1;
if(a==2)x=a+1;
if(a==3)x=a+1;
if(b==1)y=b+2;
if(b==2)y=b+3;
if(b==3)y=b+4;
if((a>3)||(b>3)||(a<1)||(b<1)||((a>3)&&(b>3))||((a<1)&&(b<1)))
{
cout<<"该坐标不存在,请重新输入坐标"<<endl<<endl;
for(;;)
{
cin>>a>>b;
if(a==1)x=a+1;
if(a==2)x=a+1;
if(a==3)x=a+1;
if(b==1)y=b+2;
if(b==2)y=b+3;
if(b==3)y=b+4;
if((s[x][y]=="_")&&((a<=3)&&(b<=3))&&((a>=1)&&(b>=1)))break;
if((a>3)||(b>3)||(a<1)||(b<1)||((a>3)&&(b>3))||((a<1)&&(b<1)))cout<<"该坐标不存在,请重新输入坐标"<<endl<<endl;
if((s[x][y]=="x")||(s[x][y]=="o"))cout<<"已经下过了,请重新输入坐标"<<endl<<endl;
}
}
if((s[x][y]=="x")||(s[x][y]=="o"))
{
cout<<"已经下过了,请重新输入坐标"<<endl<<endl;
for(;;)
{
cin>>a>>b;
if(a==1)x=a+1;
if(a==2)x=a+1;
if(a==3)x=a+1;
if(b==1)y=b+2;
if(b==2)y=b+3;
if(b==3)y=b+4;
if((s[x][y]=="_")&&((a<=3)&&(b<=3))&&((a>=1)&&(b>=1)))break;
if((a>3)||(b>3)||(a<1)||(b<1)||((a>3)&&(b>3))||((a<1)&&(b<1)))cout<<"该坐标不存在,请重新输入坐标"<<endl<<endl;
if((s[x][y]=="x")||(s[x][y]=="o"))cout<<"已经下过了,请重新输入坐标"<<endl<<endl;
}
}
s[x][y]="x";
for(int i=1;i<=4;i++)
{
for(int j=1;j<=7;j++)cout<<s[i][j];
cout<<endl;
}
cout<<endl;
if(s[2][3]=="x"&&s[2][5]=="x"&&s[2][7]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[3][3]=="x"&&s[3][5]=="x"&&s[3][7]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[4][3]=="x"&&s[4][5]=="x"&&s[4][7]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[2][3]=="x"&&s[3][3]=="x"&&s[4][3]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[2][5]=="x"&&s[3][5]=="x"&&s[4][5]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[2][7]=="x"&&s[3][7]=="x"&&s[4][7]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[2][3]=="x"&&s[3][5]=="x"&&s[4][7]=="x"){cout<<"A方赢了!!!";p=1;}
if(s[2][7]=="x"&&s[3][5]=="x"&&s[4][3]=="x"){cout<<"A方赢了!!!";p=1;}
if(p==1)break;
if(s[2][3]!="_"&&s[2][5]!="_"&&s[2][7]!="_"&&s[3][3]!="_"&&s[3][5]!="_"&&s[3][7]!="_"&&s[4][3]!="_"&&s[4][5]!="_"&&s[4][7]!="_"&&p!=1)
{
cout<<"平局!!!";
break;
}
cout<<"轮到B方下棋子,请输入坐标"<<endl<<endl;
cin>>a>>b;
if(a==1)x=a+1;
if(a==2)x=a+1;
if(a==3)x=a+1;
if(b==1)y=b+2;
if(b==2)y=b+3;
if(b==3)y=b+4;
if((a>3)||(b>3)||(a<1)||(b<1)||((a>3)&&(b>3))||((a<1)&&(b<1)))
{
cout<<"该坐标不存在,请重新输入坐标"<<endl<<endl;
for(;;)
{
cin>>a>>b;
if(a==1)x=a+1;
if(a==2)x=a+1;
if(a==3)x=a+1;
if(b==1)y=b+2;
if(b==2)y=b+3;
if(b==3)y=b+4;
if((s[x][y]=="_")&&((a<=3)&&(b<=3))&&((a>=1)&&(b>=1)))break;
if((a>3)||(b>3)||(a<1)||(b<1)||((a>3)&&(b>3))||((a<1)&&(b<1)))cout<<"该坐标不存在,请重新输入坐标"<<endl<<endl;
if((s[x][y]=="x")||(s[x][y]=="o"))cout<<"已经下过了,请重新输入坐标"<<endl<<endl;
}
}
if((s[x][y]=="x")||(s[x][y]=="o"))
{
cout<<"已经下过了,请重新输入坐标"<<endl<<endl;
for(;;)
{
cin>>a>>b;
if(a==1)x=a+1;
if(a==2)x=a+1;
if(a==3)x=a+1;
if(b==1)y=b+2;
if(b==2)y=b+3;
if(b==3)y=b+4;
if((s[x][y]=="_")&&((a<=3)&&(b<=3))&&((a>=1)&&(b>=1)))break;
if((a>3)||(b>3)||(a<1)||(b<1)||((a>3)&&(b>3))||((a<1)&&(b<1)))cout<<"该坐标不存在,请重新输入坐标"<<endl<<endl;
if((s[x][y]=="x")||(s[x][y]=="o"))cout<<"已经下过了,请重新输入坐标"<<endl<<endl;
}
}
s[x][y]="o";
for(int i=1;i<=4;i++)
{
for(int j=1;j<=7;j++)cout<<s[i][j];
cout<<endl;
}
cout<<endl;
if(s[2][3]=="o"&&s[2][5]=="o"&&s[2][7]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[3][3]=="o"&&s[3][5]=="o"&&s[3][7]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[4][3]=="o"&&s[4][5]=="o"&&s[4][7]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[2][3]=="o"&&s[3][3]=="o"&&s[4][3]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[2][5]=="o"&&s[3][5]=="o"&&s[4][5]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[2][7]=="o"&&s[3][7]=="o"&&s[4][7]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[2][3]=="o"&&s[3][5]=="o"&&s[4][7]=="o"){cout<<"B方赢了!!!";p=1;}
if(s[2][7]=="o"&&s[3][5]=="o"&&s[4][3]=="o"){cout<<"B方赢了!!!";p=1;}
if(p==1)break;
if(s[2][3]!="_"&&s[2][5]!="_"&&s[2][7]!="_"&&s[3][3]!="_"&&s[3][5]!="_"&&s[3][7]!="_"&&s[4][3]!="_"&&s[4][5]!="_"&&s[4][7]!="_"&&p!=1)
{
cout<<"平局!!!";
break;
}
}
return 0;
}
c++井字棋人人对战游戏
于 2023-04-06 21:03:44 首次发布
6136

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



