C語言 三子棋

2021-10-10 16:56:27 字數 2904 閱讀 8569

定義標頭檔案game.h

//宣告

#ifndef _game_h_

#define _game_h_

#include

#include

#include

#define row 3

#define col 3

// 宣告函式 便於text.c中 game()方法呼叫

void

initboard

(char board[

][col]

,int row,

int col)

;void

showboard

(char board[

][col]

,int row,

int col)

;void

playermove

(char board[

][col]

,int row,

int col)

;void

computermove

(char board[

][col]

,int row,

int col)

;char

iswin

(char board[

][col]

,int row,

int col)

;#endif

text.c

#define _crt_secure_no_warnings 1

#include

"game.h"

//選單函式

void

menu()

void

game()

;initboard

(board, row, col)

;showboard

(board, row, col)

;int ret =0;

while(1

)computermove

(board, row, col)

;showboard

(board, row, col)

; ret =

iswin

(board, row, col);if

(ret !=

' ')}if

(ret ==

'q')

if(ret ==

'x')

if(ret ==

'o')

}int

main()

}while

(input)

;system

("pause");

return0;

}

game.c

#define _crt_secure_no_warnings 1

#include

"game.h"

//初始化棋盤

void

initboard

(char board[

][col]

,int row,

int col)}}

//列印棋盤

void

showboard

(char board[

][col]

,int row,

int col)

}printf

("\n");

//控制行數

if(i < row -1)

}printf

("\n");

}}printf

("****************\n");

}//玩家移動

void

playermove

(char board[

][col]

,int row,

int col)

}else}}

//電腦移動

void

computermove

(char board[

][col]

,int row,

int col)}}

//判斷輸贏

char

iswin

(char board[

][col]

,int row,

int col)

if(board[0]

[i]== board[1]

[i]&& board[1]

[i]== board[2]

[i]&& board[0]

[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[i][1

]== board[2]

[0]&& board[0]

[2]!=

' ')

//是否是平局--棋盤放滿if(

isfull

(board, row, col)==1

)}return

' ';

//一定有乙個遊戲勝利

}//靜態方法,只被iswin()使用 判斷是否放滿

static

intisfull

(char board[

][col]

,int row,

int col)}}

return1;

}

第一次寫 ,有問題還請及時指出,謝謝。

C語言 三子棋

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

三子棋(c語言)

今天做了乙個三子棋小遊戲,寫了好久卻只完成了一部分,先把這部分分享給大家吧!望大家給點建議和指導,最後判斷輸贏部分到現在還沒構思出來,嘿嘿!game.h define crt secure no warnings 1 ifndef game h define game h include inclu...

c語言 三子棋

c語言三子棋 來完善一下三子棋 game.h define crt secure no warnings 1 ifndef game h define game h include include include include define row 3 define col 3 void menu...