C語言完成三子棋遊戲

2021-09-29 08:45:50 字數 3121 閱讀 5365

一、基本編寫思路

建立乙個二維陣列並對其進行初始化;再編寫乙個showboard函式用於列印出棋盤並顯示每一次落子的具體情況。編寫乙個computermove函式用於控制電腦進行落子。最後我們需要編寫乙個judge函式用於在雙方都落子後是否有人勝出,遊戲是否還需要繼續下去。

二、具體**實現

編寫game.**件,將函式宣告寫入其中。

#ifndef __game_h__

#define __game_h__

#include

#include

#include

#include

#pragma warning(disable:4996)

#define row 3

#define col 3

#define p_color 'x'

#define c_color 'o'

#define init ' '

void

initboard

(char board[

][col]

,int row,

int col)

;void

showboard

(char board[

][col]

,int row,

int col)

;void

computermove

(char board[

][col]

,int row,

int col)

;char

judge

(char board[

][col]

,int row,

int col)

;void

game()

;int

guess()

;#endif

編寫main.c檔案,完成遊戲的退出、選單列印、進入遊戲操作。

#include

"game.h"

void

menu()

intmain()

}system

("pause");

}

編寫game.c檔案,將需要呼叫的實現具體功能的函式都放在裡面。

#include"game.h"

void

initboard

(char board[

][col]

,int row,

int col)}}

void

showboard

(char board[

][col]

,int row,

int col)

//實現對棋盤的列印

printf

("\n");

printf

("---------------\n\n");

}}void

computermove

(char board[

][col]

,int row,

int col)

//實現電腦落子操作}}

char

judge

(char board[

][col]

,int row,

int col)

//實現判定是否有人獲勝操作

}for

(i =

0; i <= col; i++)}

if(board[1]

[1]!=

' '&& \

board[0]

[0]== board[1]

[1]&& \

board[1]

[1]== board[2]

[2])

if(board[1]

[1]!=

' '&& \

board[0]

[2]== board[1]

[1]&& \

board[1]

[1]== board[2]

[0])

for(i =

0; i < row; i++)}

}return

'f';

}int

guess()

//實現隨機決定誰先落子操作

else

}void

game()

if(board[x -1]

[y -1]

!=' '

) board[x -1]

[y -1]

= p_color;

who =0;

break

;case0:

computermove

(board, row, col)

; who =1;

break

;default

:break;}

result =

judge

(board, row, col);if

(result !=

'n')

system

("cls");

}while(1

);if(result == p_color)

else

if(result == c_color)

else

printf

("要不要再來一局!\n");

}

三、運**況進入遊戲介面

通過拋硬幣的方式決定誰先走

具體遊戲進行

遊戲結束

這是我第一次編寫比較系統的程式,個人水平有限,如有錯漏,請多指教。

C語言 三子棋遊戲

用c語言第一次完成三子棋遊戲,感觸特別深刻。在寫 中我明白了,思路還有 風格的重要性,在這次 中發現,我們整理好邏輯想法 對寫 就不會有太多問題了 如下,若有改進的地方,還希望大家可以多多指點。include include include include define row 3 define c...

C語言三子棋遊戲

三子棋是一種只需要行 列 斜中任意一種情況三個相同棋子相連便勝利的遊戲。本程式中,要求玩家與電腦pk,棋盤座標用乙個二維陣列儲存起來,玩家通過鍵盤輸入座標落子,電腦通過srand和rand函式隨機產生座標落子。每次落子都需要判斷遊戲是否結束。1.遊戲選單,供使用者進入遊戲 2.建立初始化棋盤 3.列...

C語言 三子棋遊戲

今天,我們用c語言來寫乙個三子棋遊戲。在整個工程裡建立了三個檔案,分別為main.c game.c game.h,其中 main.c 用於放整個遊戲的框架 game.c與game.h組成玩遊戲的模組。如下 game.h define crt secure no warnings 1 include ...