C語言 三子棋遊戲的實現

2021-07-31 17:48:43 字數 2193 閱讀 8073

簡單的三子棋遊戲是指棋盤為3*3,玩家與電腦之間的對決,誰先將各自的棋下為一排(橫/豎/斜)者獲勝,電腦所下位置是隨機產生的;源**如下:

game,h中定義的函式:

#define rows 3    

#define cols 3

void init_board(char board[rows][cols], int rows,int cols);//初始化棋盤

void display_board(char board[rows][cols], int rows, int cols);//列印棋盤

void player_move(char board[rows][cols], int rows, int cols);//玩家下棋的函式

void computer_move(char board[rows][cols], int rows, int cols);//電腦下棋的函式

char check_win(char board[rows][cols], int rows, int cols);//判斷輸贏函式

test.h用於存放主函式:

#include#include#include"game.h"    

void menu() //列印選單

void game()

;

init_board(board, rows, cols);

display_board(board, rows, cols);

while (1)

if (ret == 'x')

else if (ret == '0')

else

}

enum option

;

int main()

} while (input);

system("pause\n");

return 0;

}

game.c中遊戲實現:

#include"game.h"    

#include#include#include#includevoid init_board(char board[rows][cols], int rows, int cols)

void display_board(char board[rows][cols], int rows, int cols)

}

void player_move(char board[rows][cols], int rows, int cols)

else

}

}

}

void computer_move(char board[rows][cols], int rows, int cols)

}

}

static int is_full(char board[rows][cols], int rows, int cols)

}

return 1; //表示棋盤已滿

}

char check_win(char board[rows][cols], int rows, int cols) //判斷輸贏,三行三列和兩個交叉行

}

for (i = 0; i < cols; i++)

}

if ((board[0][0] == board[1][1]) && (board[1][1] == board[2][2]) && (board[1][1] != ' '))

if ((board[0][2] == board[1][1]) && (board[1][1] == board[2][0]) && (board[2][2] != ' '))

if (is_full(board, rows, cols))

return ' ';

}

三子棋的遊戲實現(C語言)

三子棋的c語言設計的思路 1.設計乙個介面 讓玩家執行後即可以看到乙個介面,而此時介面需要乙個讓玩家選擇的語句,即可以選擇玩遊戲或者退出操作。介面設計需要swich語句的實現,退出遊戲設計選項為0,即可以當選擇退出遊戲時直接退出while 迴圈 即結束遊戲。2.遊戲實現 當玩家選擇玩遊戲時,呼叫啟動...

C語言 三子棋遊戲

用c語言第一次完成三子棋遊戲,感觸特別深刻。在寫 中我明白了,思路還有 風格的重要性,在這次 中發現,我們整理好邏輯想法 對寫 就不會有太多問題了 如下,若有改進的地方,還希望大家可以多多指點。include include include include define row 3 define c...

C語言三子棋遊戲

三子棋是一種只需要行 列 斜中任意一種情況三個相同棋子相連便勝利的遊戲。本程式中,要求玩家與電腦pk,棋盤座標用乙個二維陣列儲存起來,玩家通過鍵盤輸入座標落子,電腦通過srand和rand函式隨機產生座標落子。每次落子都需要判斷遊戲是否結束。1.遊戲選單,供使用者進入遊戲 2.建立初始化棋盤 3.列...