三子棋小遊戲編寫教程,詳細思路

2021-10-10 05:40:32 字數 2668 閱讀 8474

思路:
int main( )

1.先寫乙個基本的選單與玩家進行互動

int menu()

2. 判斷玩家是否進入遊戲

while(1)

1進入,0退出

3.寫遊戲內容(game函式)

void game()

①建立棋盤

char chessboard[max_row][max_col] = ;

並初始化為空棋盤

void init(char chessboard[max_row][max_col])

//列印棋盤的函式

//優化棋盤,使玩家可以看清棋盤

void

printchessboard

(char chessboard[max_row]

[max_col])}

//void printchessboard(char chessboard[max_row][max_col])

// printf("\n");//列印完一行進行換行

// }

//}//玩家落子的函式

void

playermove

(char chessboard[max_row]

[max_col])if

(chessboard[row]

[col]

!=' '

)//落子,用'x'表示玩家的棋子

chessboard[row]

[col]

='x'

;break;}

}//判斷棋盤未滿的函式

intisfull

(char chessboard[max_row]

[max_col])}

}return1;

//滿了

}//判斷勝負的函式

//'x'表示玩家獲勝 'o'表示電腦獲勝 'q'表示和棋 ' '表示勝負未分

intiswinner

(char chessboard[max_row]

[max_col])}

//檢查所有列 原理同上

for(

int col =

0; col < max_col; col++

)//檢查兩條對角線

if(chessboard[0]

[0]!=

' '&&chessboard[0]

[0]== chessboard[1]

[1]&& chessboard[0]

[0]== chessboard[2]

[2])

if(chessboard[0]

[2]!=

' '&&chessboard[0]

[2]== chessboard[1]

[1]&& chessboard[0]

[2]== chessboard[2]

[0])

//判斷是否為和棋if(

isfull

(chessboard)

)return

' ';

//表示勝負未分}}

//電腦落子的函式 (隨機落子)

void

computermove

(char chessboard[max_row]

[max_col]

)//落子

chessboard[row]

[col]

='o'

;break;}

}//初始化為空棋盤

void

init

(char chessboard[max_row]

[max_col])}

}//3.寫game()函式

void

game()

;//初始化為空棋盤

init

(chessboard)

;char winner =

' ';

while(1

)//⑤ 電腦落子

computermove

(chessboard)

;//⑥ 判斷勝負

winner =

iswinner

(chessboard);if

(winner !=

' ')

}printchessboard

(chessboard);if

(winner ==

'x')

else

if(winner ==

'o')

else

}int

main()

else

if(choice ==0)

else

}system

("pause");

return0;

}以上就是三子棋遊戲的**,

建立棋盤要記得給玩家建立棋格,優化玩家遊戲體驗。

srand()是乙個偽隨機值,要用time(0)時間戳使其真正隨機,記得#include ,

電腦隨機落子,使用% max保證落子座標在範圍[0,2]內:

int row = rand() % max_row;

int col = rand() % max_col;

希望這篇文章能給您帶來幫助!

小遊戲 三子棋

c語言 實現最簡單的三子棋 無人工智慧,介面簡單,手動輸入座標x x 如下 環境 vs2015 game.h pragma once ifndef game h define game h include include include include define row 3 define col...

三子棋小遊戲

簡單版的三子棋遊戲並不難,就只是運用二維陣列和呼叫各個函式。現在來分析遊戲的思路,首先在螢幕上列印乙個選擇遊戲的選單,這個簡單,就只需要呼叫乙個函式輸出就可以了,玩家選擇開始遊戲就進入遊戲函式,首先要初始化二維陣列,可以用memset 來進行初始化,然後在螢幕上列印出三子棋的棋盤,這個也簡單,知識簡...

三子棋小遊戲

game.h define crt secure no warnings ifndef game h define game h include include include include define rows 3 行數 define cols 3 列數void initboard char ...