C語言實現三字棋遊戲

2021-08-04 13:22:42 字數 1787 閱讀 4069

#include

#include

#include

#include

#define rows 3

#define cols 3

void menu();

void init_board(char arr[cols], int x, int y);//初始化棋盤

void print_board(char arr[cols], int x, int y);//列印棋盤

void player_move(char arr[cols]);//玩家下棋

int check_full(char arr[cols], int x, int y);//判斷棋盤是否已滿

void computer_move(char arr[cols]);//電腦下棋

char check_win(char arr[cols], int x, int y);//判斷誰贏

#include"three_chess.h"

void menu()

void init_board(char arr[cols], int x, int y)//傳陣列時一般要把陣列的下標也傳進來

}}void print_board(char arr[cols], int x, int y)

}}void player_move(char arr[cols])

else

}}int check_full(char arr[cols], int x, int y)}}

return

1;//如果程式可以執行到這裡,說明陣列已經滿了,則返回0

}void computer_move(char arr[cols])

else}}

}char check_win(char arr[cols], int x, int y)

for (i=0; iif((arr[i][0] == arr[i][1]) && arr[i][1] == arr[i][2])

}for (i=0; iif ((arr[0][i] == arr[1][i]) && arr[1][i] == arr[2][i])

}if ((arr[0][0] == arr[1][1]) && arr[1][1] == arr[2][2])

if ((arr[0][2] == arr[1][1]) && arr[1][1] == arr[2][0])

return

' ';//如果沒有判斷出誰贏並且棋盤還沒滿,則繼續進行遊戲

}#include"three_chess.h"

void game()//遊戲開始

printf("電腦下:\n");

computer_move(arr);//否則電腦下棋

print_board(arr,rows,cols);//把電腦下過後的棋盤列印出來

ret = check_win(arr, rows, cols);//將判斷輸贏後的返回值儲存起來

}while (ret == ' ');//如果棋盤沒有滿,同時也沒有判斷出輸贏的話,繼續執行迴圈,否則跳出迴圈

if(check_win(arr, rows, cols) == 'p')//如果判斷輸贏的返回值為玩家下的字元則就能判斷出玩家贏

else

if(check_win(arr, rows, cols) == 'c')//如果判斷輸贏的返回值為c,則可以判斷電腦贏

else

}int main()

}while(choose);

}

三字棋 C語言實現

三子棋是一種民間傳統遊戲,又叫九宮棋 圈圈叉叉 一條龍等。將正方形對角線連起來,相對兩邊依次擺上三個雙方棋子,只要將自己的三個棋子走成一條線,對方就算輸了。專案概要 使用c語言中二維陣列和函式的基本知識簡單實現乙個三子棋遊戲,這個遊戲要實現的基本功能主要有初始化棋盤 棋盤的列印 玩家下棋 電腦下棋 ...

用C語言實現三字棋

用c語言實現三字棋,其根本就是在乙個二維陣列裡的各種操作,在這個專案裡面,我們要自己定義乙個標頭檔案 ifndef game h define game h include include include include define row 3 設定行 define col 3 設定列 void ...

c語言三字棋

1.三字棋存在只能演算法,雖然程式較笨,希望大佬指導。2.利用for迴圈巢狀if判斷,每一行有三種堵棋的情況。3.玩家或者電腦每下一步棋都要進行判斷輸贏和列印棋盤 game.h 標頭檔案 ifndef game h define game h include include include defi...