C語言簡單實現三子棋

2021-07-24 18:50:08 字數 2458 閱讀 1984

首先我們在vs2013中建立乙個test.c和game.c檔案,再建立乙個test.h標頭檔案,

其中game.c檔案裡面編寫三子棋的主要功能實現,

test.c檔案用於三子棋功能測試,

test.h檔案用於宣告函式。

函式解釋:memset(void *dest, intc, size_tcount),dest為被設定物件,c為設定物件,count為設定數量

例:memset(arr[rows][cols],' ',sizeof(arr)*rows*cols)將arr陣列的所有元素設定為空

下面是源**:

test.h

#ifndef __test__

#define __test__

#define rows 3

#define cols 3

void init_board(char arr[rows][cols], int rows, int cols);

void display_board(char arr[rows][cols], int rows, int cols);

void player_move(char arr[rows][cols], int rows, int cols);

void computer_move(char arr[rows][cols], int rows, int cols);

char check_win(char arr[rows][cols], int rows, int cols);

#endif

test.c

#include#include"test.h"

#include#include#pragma warning (disable:4996)

void menu()

enum option //列舉

;void game()

;char ret = 0;

init_board(arr,rows,cols);

display_board(arr, rows, cols);

while (1)

if (ret == 'q')

else if (ret == 'x')

else if (ret == '0')

}int main()

} while (input);

}

game.c

#include"test.h"

#include#include#pragma warning (disable:4996)

void init_board(char arr[rows][cols], int rows, int cols) //先將棋盤設為空

void display_board(char arr[rows][cols], int rows, int cols) //每次落子後展示一次棋盤

}void player_move(char arr[rows][cols], int rows, int cols) //玩家落子實現

else

}}void computer_move(char arr[rows][cols], int rows, int cols) //電腦落子實現 }}

static int is_full(char arr[rows][cols], int rows, int cols) //判斷棋盤是否落滿

} return 1;//滿了 }

char check_win(char arr[rows][cols], int rows, int cols) //判斷輸贏

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

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

if ((arr[1][3] == arr[1][1]) && (arr[1][1] == arr[2][1]) && (arr[1][1] != ' '))

if (is_full(arr, rows, cols) == 1)

return ' ';//棋盤未滿

C語言 簡單實現三子棋

今天我們來完成乙個三子棋的小遊戲。遊戲要實現 在3 3的棋盤上進行人機對弈,玩家輸入棋盤座標下棋,電腦通過產生隨機數下棋。最終,誰先完成三子相連,就是贏家。若在棋盤下滿還未決出勝負,那就是平局。為了完成這個遊戲,我們要建立三個檔案,分別為chessboard.h chessboard.c test....

C語言三子棋實現

標頭檔案 ifndef game h define game h include time.h include stdlib.h include string.h include stdio.h define rows 3 define cols 3 void init board char arr...

C語言 三子棋

使用工具 vs2017 分為三部分 game.h 函式宣告 game.c 實現函式功能 test.c main函式 棋盤為3 3的矩陣 規則 1.每回合玩家與電腦只能放置一枚棋子 2.已有棋子的位置不能再放置棋子 3.若有一方的三枚棋子可連城一條直線,則勝利 4.若棋盤棋子已經布滿,但是雙方沒有一方...