Emmmmmm,粉福一直没想好。实在没什么好东西,所以一直没更。
今天信息课上闲的慌,写了个五子棋,就当粉福吧。
不要期待,很简陋,也不能人机互博,也不能判断胜负,但是雀食可以 van。不过需要 2 个人。
#include <bits/stdc++.h>
#include <windows.h>
using namespace std;
char board[25][25];
bool vis[25][25];
int n,x,y,cnt=1;
void print(){
cout<<"走的时候先输入行,再输入列,中间用空格分开。如果不小心打错了,输入“-1 -1”即可。"<<endl;
cout<<" ";
for(int i=1;i<=n;i++){
if(i)
cout<<i<<' ';
if(i<10)
cout<<' ';
}
cout<<endl;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(j==1)
cout<<i<<' ';
if(i<10)
cout<<' ';
cout<<board[i][j]<<' ';
if(i>9)
cout<<' ';
}
cout<<endl;
}
}
int main(){
cout<<"请输入棋盘大小,最大 20,最小 10"<<endl;
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
board[i][j]='.';
}
while(true){
system("cls");
print();
if(cnt%2==1)
cout<<"黑棋走"<<endl;
if(cnt%2==0)
cout<<"白棋走"<<endl;
int r,c;
cin>>r>>c;
if(r==-1 && c==-1){
board[x][y]='.';
system("cls");
print();
cnt--;
if(cnt%2==1){
cout<<"黑棋走"<<endl;
continue;
}
if(cnt%2==0){
cout<<"白棋走"<<endl;
continue;
}
}
else if(cnt%2==1 && !vis[r][c])
board[r][c]='B';
else if(cnt%2==0 && !vis[r][c])
board[r][c]='W';
else if(vis[r][c]){
cout<<"该位置已经有棋子了,请重下"<<endl;
Sleep(1000);
continue;
}
vis[r][c]=true;
x=r;
y=c;
cnt++;
}
return 0;
}