三子棋遊戲

2021-08-18 09:48:14 字數 2325 閱讀 5377

思路:1.先展示乙個選單,讓玩家選擇,選擇1後進入遊戲

2.進入遊戲後,對建立好的二維陣列進行初始化,然後展現棋盤

3.玩家開始玩遊戲,玩過一次之後,展現棋盤,進行判斷,判斷輸贏,判斷棋盤是否為滿,之後電腦開始下棋,同理,對電腦也進行判斷,這是乙個迴圈。

總共需要三個檔案:

1.sanziqi.h

包含所需函式的宣告

2.game.c包含函式的定義

3.test.c包含函式的實現

#ifndef __sanziqi_h__ //條件指示符#ifndef 的最主要目的是防止標頭檔案的重複包含和編譯

#define __sanziqi_h__

#define row 3

#define col 3

//初始化棋盤

void init_board(char board[row][col], int row, int col);

//顯示棋盤

void displayboard(char board[row][col], int row, int col);

//玩家走棋

void playermove(char board[row][col], int row, int col);

//電腦走棋

void computermove(char board[row][col], int row, int col);

//判斷輸贏

int checkwin(char board[row][col], int row, int col);

//判斷棋盤是否為滿

int checknull(char board[row][col], int row, int col);

#endif // !__sanziqi_h__

#include"sanziqi.h"

//初始化棋盤函式的定義

void initboard(char board[row][col], int row, int col) }}

//顯示棋盤函式的定義

void displayboard(char board[row][col], int row, int col) }

}//玩家走棋——包含兩種判斷:1.在棋盤上.2.下的位置是空。是乙個迴圈

void playermove(char board[row][col], int row, int col)

else

}else

}}//電腦走棋,是隨機的,需要產生隨機數

void computermove(char board[row][col], int row, int col) }}

//判斷輸贏--在一條線上就贏了,分為四種情況,然後判斷是否平局

int checkwin(char board[row][col], 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] != ' '))

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

if (checknull(board,row, col))

return ' ';

}//判斷棋盤是否為滿

int checknull(char board[row][col], int row, int col)

} }return 1; //表示棋盤已下滿

}#include #include#include"sanziqi.h"

void menu()

void game()

; initboard(board, row, col);

displayboard(board, row, col);

while (1)

computermove(board, row, col);

displayboard(board, row, col);

ret = checkwin(board, row, col);

if (ret != ' ')

} if (ret == 'x')

if (ret == 'o')

if (ret == 'q') }

int main()

} while (choice);

return 0;

}

三子棋遊戲

首先介紹一下三子棋遊戲規則 這是乙個玩家和電腦對戰的三子棋遊戲 棋盤如上圖所示,三個棋子連在一起則勝利 下面就是用c語言實現的方法 建立棋盤 利用二維陣列來實現乙個棋盤,棋盤剛開始是沒有任何棋子的,將二維陣列所有元素初始化為空格即可 玩家下棋 玩家輸入棋盤中的對應座標來下棋,下棋時需要考慮輸入座標合...

三子棋遊戲

閒來無事,竟意外發現了三子棋遊戲,順便實現了這個過程,我們一起來看下。三子棋的實現需要的是五個函式,我用了initboard 初始化棋盤函式 display 列印棋盤函式 player 玩家 computer 電腦 check full 判斷棋盤是否已滿,從而判斷輸贏 game.h define c...

三子棋遊戲

遊戲部分思路 初始化棋盤 玩家下棋 輸出棋盤 判斷輸贏 電腦下棋 判斷輸贏 迴圈這部分,直到有人贏得比賽 效果圖 test,c原始檔 define crt secure no warnings include game.h void menu void game char win init boar...