住房城乡建设部网站通报,软件开发项目预算,马来西亚的网站后缀,怎么开通微信小程序商店小项目#xff1a;
需要的数据
1、定义棋盘的二维数组
2、定义变量用于记录下棋的坐标
3、定义角色 黑棋 O 白棋 * 空位业务逻辑#xff1a;
是否需要对数据初始化
for(;;)
{1、清屏、显示棋盘2、落子坐标是否合法、该位置是否有棋子3、判断是否五子连珠4、交换角色5、显示…小项目
需要的数据
1、定义棋盘的二维数组
2、定义变量用于记录下棋的坐标
3、定义角色 黑棋 O 白棋 * 空位业务逻辑
是否需要对数据初始化
for(;;)
{1、清屏、显示棋盘2、落子坐标是否合法、该位置是否有棋子3、判断是否五子连珠4、交换角色5、显示棋盘
}代码1
#includestdio.h
#includegetch.h
#includestdlib.h
int map[15][15]{};
int bx0,by0;
int cnt1,ret0;int if_end(void);
int color(void);void init(void)
{map[bx][by]3;
}void show(void)
{system(clear);for(int i0;i15;i){for(int j0;j15;j){switch(map[i][j]){case 0:printf(* );break; case 1:printf( );break; case 2:printf(O );break; default:printf(# );break;}}printf(\n);}printf(棋手1: 棋手2: O\n);printf(当前棋手%d\n,color());
}void move_left(void)
{if(by-10){map[bx][by] -3;map[bx][by-1] 3;by--;}
}void move_right(void)
{if(by115){map[bx][by] -3;map[bx][by1] 3;by;}
}void move_up(void)
{if(bx-10){map[bx][by] -3;map[bx-1][by] 3;bx--;}
}void move_down(void)
{if(bx115){map[bx][by] -3;map[bx1][by] 3;bx;}
}void drop()
{if(map[bx][by]3){map[bx][by] color();cnt;}
}void move(void)
{switch(getch()){case 183:move_up();break;case 184:move_down();break;case 186:move_left();break;case 185:move_right();break;case 48:drop();break;}
}int color(void)
{if(cnt%2){return 1;}return 2;
}int check1(void)
{int num0;for(int i0;i15;i){if(map[bx][i]1 || map [bx][i]4){num;if(num5)return 1;}else{num0;}}for(int i0;i15;i){if(map[bx][i]2 || map [bx][i]5){num;if(num5)return 1;}else{num0;}}return 0;
}int check2(void)
{int num0;for(int i0;i15;i){if(map[i][by]1 || map [i][by]4){num;if(num5)return 1;}else{num0;}}for(int i0;i15;i){if(map[i][by]2 || map [i][by]5){num;if(num5)return 1;}else{num0;}}return 0;
}int check3(void)
{int i1,num0;while(byi15 bxi15){if(map[bx][by]-3 ! 0 map[bxi][byi]map[bx][by]-3){num;i;}else{i1;break;}}while(by-i0 bx-i0){if(map[bx][by]-3 ! 0 map[bx-i][by-i]map[bx][by]-3){num;i;}else{i1;break;}}if(num4)return 1;return 0;
}int check4(void)
{int i1,num0;while(byi15 bx-i0){if(map[bx][by]-3 ! 0 map[bx-i][byi]map[bx][by]-3){num;i;}else{i1;break;}}while(by-i0 bxi15){if(map[bx][by]-3 ! 0 map[bxi][by-i]map[bx][by]-3){num;i;}else{i1;break;}}if(num4)return 1;return 0;
}int is_end(void)
{if(check1()1) return 1;if(check2()1) return 1;if(check3()1) return 1;if(check4()1) return 1;return 0;
}int main(int argc,const char* argv[])
{init();while(1){show();if(is_end()1){map[bx][by] -3;show();break;}move();}if(cnt%2){printf(白棋win);}else{printf(黑棋win); }
}代码2光标代替字符#
#includestdio.h
#includegetch.h
#includestdlib.h
int map[15][15]{};
int bx7,by7;
int cnt1,ret0;int if_end(void);
int color(void);void show(void)
{system(clear);for(int i0;i15;i){for(int j0;j15;j){switch(map[i][j]){case 0:printf( *);break; case 1:printf( );break; case 2:printf( O);break; }}printf(\n);}printf(棋手1: 棋手2: O\n);printf(当前棋手%d\n,color());
}void drop()
{if(map[bx][by]0){map[bx][by] color();cnt;}
}void move(void)
{printf(\33[%d;%dH,bx1,(by1)*2);switch(getch()){case 183:bx0 bx--;break;case 184:bx14 bx;break;case 186:by0 by--;break;case 185:by14 by;break;case 48:drop();break;}
}int color(void)
{if(cnt%2){return 1;}return 2;
}int check1(void)
{int num0;for(int i0;i15;i){if(map[bx][i]1 || map [bx][i]4){num;if(num5)return 1;}else{num0;}}for(int i0;i15;i){if(map[bx][i]2 || map[bx][i]5){num;if(num5)return 1;}else{num0;}}return 0;
}int check2(void)
{int num0;for(int i0;i15;i){if(map[i][by]1 || map [i][by]4){num;if(num5)return 1;}else{num0;}}for(int i0;i15;i){if(map[i][by]2 || map [i][by]5){num;if(num5)return 1;}else{num0;}}return 0;
}int check3(void)
{int i1,num0;while(byi15 bxi15){if(map[bx][by] ! 0 map[bxi][byi]map[bx][by]){num;i;}else{i1;break;}}while(by-i0 bx-i0){if(map[bx][by] ! 0 map[bx-i][by-i]map[bx][by]){num;i;}else{i1;break;}}if(num4)return 1;return 0;
}int check4(void)
{int i1,num0;while(byi15 bx-i0){if(map[bx][by] ! 0 map[bx-i][byi]map[bx][by]){num;i;}else{i1;break;}}while(by-i0 bxi15){if(map[bx][by] ! 0 map[bxi][by-i]map[bx][by]){num;i;}else{i1;break;}}if(num4)return 1;return 0;
}int is_end(void)
{if(check1()1) return 1;if(check2()1) return 1;if(check3()1) return 1;if(check4()1) return 1;return 0;
}int main(int argc,const char* argv[])
{while(1){show();if(is_end()1){}move();}if(cnt%2){printf(白棋win);}else{printf(黑棋win); }
}