標籤:c語言 編寫一個玩家操作的函數和電腦能夠操作的兩人棋盤遊戲 哪邊有三個相連的勝出
#include <stdio.h>#include <stdlib.h>char arr[3][3];void print(){int t;for(t=0;t<3;t++){printf("%c|%c|%c|",arr[t][0],arr[t][1],arr[t][2]);printf("\n_|_|_|\n");}}void init(){int i,j;for(i=0;i<3;i++){for(j=0;j<3;j++){arr[i][j]=‘ ‘;}}}void player_move(){int x,y;printf("請輸入您下棋的座標!");scanf("%d%d",&x,&y);x--;y--;if(arr[x][y]!=‘ ‘ ){printf("該位置已被佔用,請重新輸入!!!\n");player_move();}else arr[x][y]=‘X‘;}int computer(){int i, j; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { if (arr[i][j] == ‘ ‘ ) { arr[i][j]=‘0‘; break; } } break; }}char check(){int i;for(i=0;i<3;i++){if(arr[i][0]==arr[i][1]&&arr[i][1]==arr[i][2]){return arr[i][0];}}for(i=0;i<3;i++){if(arr[0][i]==arr[1][i]&&arr[1][i]==arr[2][i]){return arr[0][i];}}if(arr[0][0]==arr[1][1]&&arr[1][1]==arr[2][2]){return arr[0][0];}if(arr[0][2]==arr[1][1]&&arr[1][1]==arr[2][0]){return arr[0][2];}else {return ‘ ‘;}}int main(){char none;printf("歡迎來到棋盤遊戲!\n");init();do{print();player_move();none=check();if(none!=‘ ‘)break;computer();if(none!=‘ ‘)break;}while(none==‘ ‘);if(none==‘X‘){printf("恭喜您贏了!\n");}else {printf("電腦贏了!\n");}print();}
【好玩的棋盤遊戲】編寫一個玩家操作的函數和電腦能夠操作的兩人棋盤遊戲,哪邊有三個相連的勝出