c语言实现三子棋
家电维修 2023-07-16 19:17www.caominkang.com家电维修技术
日后出详解。
完整代码,复制可用
#define HANG 3 #define LIE 3 #include//#include"ojbk.h" #include #include int caidan() { do{ int x=0; printf("三子棋n"); printf("开始游戏请按1n"); printf("调节难度请按2n"); printf("退出游戏请按3n"); printf("查看游戏说明请按4n"); printf("n"); scanf("%d",&x); system("cls"); if(x==1) return 1; else if(x==3) return 3; else if(x==4) return 4; else if(x==2) return 2; else continue; }hile(1); } void daying(char x[LIE][HANG]) { int i,j; for(i=0;i =1&&a<=3&&b>=1&&b<=3) { if(ch[a-1][b-1]==' ') { ch[a-1][b-1]=''; break; } else if(ch[a-1][b-1]=='#'||ch[a-1][b-1]=='') { printf("睁大你的小眼睛,这个位置不能下了哦,换个位置吧"); continue; } } else { printf("这,,这这这,没有这个坐标啊,好好输行吗?重新输!"); continue; } }hile(1); //玩家输入 //判定 jieguo=panding(ch); if(jieguo!=0) break; //电脑输入 //简单模式; if(nandu==1) { for(int i=0;i<3;i++) { int x=0; for(int j=2;j>=0;j--) { if(ch[j][i]==' ') { ch[j][i]='#'; x++; break; } else; } if(x==1) break; } } //电脑输入; //困难模式; else if(nandu==2) { // hile(1) { int x=0,biao=0; // int m,n; int i,j; if(ch[0][0]=='#'&&ch[1][1]=='#') { if(ch[2][2]==' ') {ch[2][2]='#'; break;} } if(ch[2][2]=='#'&&ch[1][1]=='#') { if(ch[0][0]==' ') {ch[0][0]='#'; break;} } if(ch[0][0]=='#'&&ch[2][2]=='#') { if(ch[1][1]==' ') { ch[1][1]='#'; break;} } if(ch[0][2]=='#'&&ch[1][1]=='#') { if(ch[2][0]==' ') {ch[2][0]='#'; break;} } if(ch[0][2]=='#'&&ch[2][0]=='#') { if(ch[1][1]) { ch[1][1]='#'; break; } } if(ch[2][0]=='#'&&ch[1][1]=='#') { if(ch[0][2]==' ') {ch[0][2]='#'; break;} } for( i=0;i<3;i++)//列 { int biao2=0; x=0; for(j=0;j<3;j++)//检查一列是否有二个#, if(ch[j][i]=='#') x++; if(x==2) for(j=0;j<3;j++) if(ch[j][i]==' ') { ch[j][i]='#'; biao=1; biao2++; break; } if(biao2==1) break; } if(biao==1) break; for(i=0;i<3;i++)//行 { x=0; int biao2=0; for(j=0;j<3;j++)//检查一行是否有二个#, if(ch[i][j]=='#') x++; if(x==2) for(j=0;j<3;j++) if(ch[i][j]==' ') { ch[i][j]='#'; biao++; biao2++; break; } if(biao2==1) break; } if(biao==1) break; for(i=0;i<3;i++)//行 { x=0; int biao2=0; for(j=0;j<3;j++)//检查一行是否有二个, if(ch[i][j]=='') x++; if(x==2) for(j=0;j<3;j++) if(ch[i][j]==' ') { ch[i][j]='#'; biao++; biao2++; break; } if(biao2==1) break; } if(biao==1) break; for( i=0;i<3;i++)//列 { int biao2=0; x=0; for(j=0;j<3;j++)//检查一列是否有二个, if(ch[j][i]=='') x++; if(x==2) for(j=0;j<3;j++) if(ch[j][i]==' ') { ch[j][i]='#'; biao=1; biao2++; break; } if(biao2==1) break; } if(biao==1) break; if(ch[0][0]==''&&ch[1][1]=='') { if(ch[2][2]==' ') {ch[2][2]='#'; break;} } if(ch[2][2]==''&&ch[1][1]=='') { if(ch[0][0]==' ') { ch[0][0]='#'; break;} } if(ch[0][0]==''&&ch[2][2]=='') { if(ch[1][1]==' ') {ch[1][1]='#'; break;} } if(ch[0][2]==''&&ch[1][1]=='') { if(ch[2][0]) { ch[2][0]='#'; break;} } if(ch[0][2]==''&&ch[2][0]=='') { if(ch[1][1]==' ') { ch[1][1]='#'; break;} } if(ch[2][0]==''&&ch[1][1]=='') { if(ch[0][2]==' ') { ch[0][2]='#'; break;} } for(i=2;i>0;i++) { int k=0; for(j=2;j>=0;j--) { if(ch[j][i]==' ') { ch[j][i]='#'; k++; break; } else; } if(k==1) { biao++; break; } } if(biao==1) break; }// } //判定 jieguo=panding(ch); if(jieguo!=0) break; } system("cls"); daying(ch); jieguo=panding(ch); jieguo=fcai(); if(jieguo==1) continue; else if(jieguo==2) break; } } //结束游戏 else if(shuru==3) { system("cls"); printf("不玩拉倒,再见!n"); break; } //游戏说明 else if(shuru==4) { jieguo=shuoming(); if(jieguo==1) { system("cls"); continue; } } else if(shuru==2) { system("cls"); nandu=tiaojie(); continue; } system("cls"); } return 0; }
上一篇:word打开是乱码怎么办?word文档打开出现乱码的解
下一篇:怎么转换图片格式?