程式執行結果如下:
本次**,實現乙個簡易的三子棋遊戲,基本思路是:列印選單——選擇遊戲——列印初始棋盤——玩家下棋——電腦隨機下棋(利用rand(srand)的庫函式)——判斷(棋盤是否的格仔是否為空,判斷哪一方贏)——結束遊戲。
**為下:
game.h
#ifndef _game__h__
#define _game__h__
#include
#include
#include
#include
#define rows 3 //行
#define cols 3//列
void init_board(char board[rows][cols],int row,int col); //初始化棋盤
void display_board(char board[rows][cols],int row,int col); //列印棋盤
void player_move(char board[rows][cols], int row, int col); //玩家移動
void compute_move(char board[rows][cols], int row, int col); //電腦移動
char check_win(char board[rows][cols], int row, int col); //判斷輸贏
#endif \\_game__h__
game.c
#define _crt_secure_no_warnings 1
#include"game.h"
void init_board(char board[rows][cols], int row, int col)
void display_board(char board[rows][cols], int row, int col)
}void player_move(char board[rows][cols], int row, int col)
else
}else}}
void compute_move(char board[rows][cols], int row, int col)}}
static int is_full(char board[rows][cols], int row, int col)
}return 1;
}char check_win(char board[rows][cols], int row, int col)
for (i = 0; i < col; i++)
if ((board[0][0] == board[1][1])
&& (board[1][1] == board[2][2])
&& (board[1][1] != ' '))
return board[1][1];
if ((board[0][2] == board[1][1])
&& (board[1][1] == board[2][0])
&& (board[1][1] != ' '))
return board[1][1];
if (is_full(board, row, col))
return 'q';
return ' ';
}test.c
#define _crt_secure_no_warnings 1
#include"game.h"
void menu()
void game()
;int ret = '0';
init_board(board, rows, cols);//初始化棋盤
display_board(board, rows, cols);//列印棋盤
srand((unsigned int)time(null));
while (1)
if (ret == 'x')
printf("玩家贏\n");
else if (ret == '0')
printf("電腦贏\n");
else if (ret == 'q')
printf("平局\n");
display_board(board, rows, cols);
}int main()
} while (input);
return 0;
}
簡單的三子棋實現
game.h pragma warning disable 4996 ifndef game h define game h include include include define row 3 define col 3 void initboard char board row col int...
簡單三子棋
c8 簡單三子棋 使用二維陣列 建立乙個棋盤,每乙個元素都是乙個char x 表示玩家落子 o 表示電腦落子 表示未落子 define crt secure no warnings include include include int menu define max row 3 define ma...
三子棋的實現
三子棋的實現還是比較簡單的,在寫 之前,你先構建一下遊戲的架構,這樣寫的時候思路比較清晰,不容易思想卡克,很容易就完成。再乙個,你寫的 並不是孤芳自賞的,而是要拿出來給別人看,別人可以清楚地看懂你的 這才是好 我們先來看三子棋的架構如何實現,這就看你的思維邏輯能力了。下面 很清晰的展現了這一架構 v...