C語言敲出「井字「」三子棋遊戲

2021-10-02 15:29:53 字數 3231 閱讀 5601

**進入main函式,執行test函式,然後執行menu函式列印選單,再按玩家輸入的資料進入switch判斷是執行game函式還是退出遊戲。

進入game函式,如何初始化棋盤,如何輸出棋盤格式,如何讓玩家走棋子,如何讓電腦走棋子,如何判斷輸贏,如何判斷平局,都在一開始的函式宣告裡有粗略講解,自行研讀易懂。

#include

#include

#include

#define row 3

#define col 3

//函式宣告

void

initboard

(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)

;//電腦走

char

iswin

(char board[row]

[col]

,int row,

int col)

;//判斷輸贏

intisfull

(char board[row]

[col]

,int row,

int col)

;//是否平局

void

menu()

void

game()

;//初始化棋盤

char ret =0;

initboard

(board,row,col)

;//設定棋盤的格式

//列印棋盤

printf

("\n");

displayboard

(board, row, col)

;while(1

)//電腦走

computermove

(board,row,col)

;displayboard

(board, row, col)

;//電腦走也列印棋盤

ret=

iswin

(board, row, col)

;//判斷是否繼續迴圈

if(ret !=

'c')}if

(ret ==

'*')

else

if(ret ==

'#')

else

if(ret ==

'q')

}void

test()

}while

(input);}

intmain()

void

initboard

(char board[row]

[col]

,int row,

int col)

//初始化棋盤內容

}void

displayboard

(char board[row]

[col]

,int row,

int col)

printf

("\n");

if(i < row -1)

printf

("\n");

}}printf

("\n");

}void

playermove

(char board[row]

[col]

,int row,

int col)

else

}else}}

void

computermove

(char board[row]

[col]

,int row,

int col)}}

intisfull

(char board[row]

[col]

,int row,

int col)}}

//滿了

return1;

}//判斷輸贏

//玩家贏-'*'

//電腦贏-'#'

//平局-'q'

//繼續-'c'

char

iswin

(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[0]

[0]!=

' ')

if(board[0]

[2]== board[1]

[1]&& board[1]

[1]== board[2]

[0]&& board[0]

[2]!=

' ')

//判斷平局if(

isfull

(board,row,col)==1

)else

return

'c';

}

執行結果

三子棋遊戲(井字棋)

1 首先,我們得先要有乙個棋盤,那我們就得先編寫乙個函式來將棋盤初始化,再編寫乙個函式負責列印我們的棋盤。我們列印的棋盤為 2 有了棋盤後,就可以下棋了。我們可以編寫兩個函式,乙個是玩家下棋子,乙個是電腦隨機下棋子。3 最後就是判斷是誰贏得了比賽,還是平局。這些就是三子棋的大致步驟了。以下就是實現三...

c語言程式設計三子棋(井字棋)

標頭檔案 test.h ifndef three chess h 防止標頭檔案被重複,包含 也可以用 pragma once define three chess h include include include pragma warning disable 4996 vs中解決scanf函式不能...

c語言井字棋(三子棋)簡易版

遊戲的棋盤為3 3 的九宮格模式,玩家 vs 電腦 只要玩家 電腦 的某個方向的棋子連成一條線,就是玩家 電腦 或獲勝。1 表示玩家 2 表示電腦。此時就算是玩家勝利 玩家進行選擇 0 表示開始遊戲,1 表示退出遊戲 此處我們需要進行判斷玩家輸入是否有誤,輸入的值必須是0或者1,其他錯誤輸入需要進行...