首先宣告標頭檔案/game.h/
#ifndef __game_h__
#define __game_h__
//#pragma once //預防標頭檔案重複引用
#include
#include
#define row 3
#define col 3
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)
;
第二步:建乙個/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[1]
[1]== board[2]
[0]&&board[0]
[2]!=
' ')if(
isfull
(board, row, col)==1
)//是否是平局--》棋盤裡面已經放滿了
}return
' ';
//代表沒有人贏
}static
intisfull
(char board[
][col]
,int row,
int col)}}
return1;
//滿}
第三步:建乙個/test.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.h ifndef game h define game h include include include exit or srand include memset or include define row 3 define col 3 void game endif 原始檔ga...
c語言小程式之三子棋
第一次寫這麼長的程式,再此總結一下。首先考慮test.c的功能 1 main函式內實現乙個遊戲介面,用乙個迴圈可以讓遊戲一直迴圈進行,並且再迴圈內部使用分支用來選擇開始遊戲or退出遊戲。2 寫乙個menu函式,作用是列印遊戲選單介面。3 寫乙個game函式,主要在函式內部呼叫各個步驟的函式,實現乙個...
三子棋的實現
三子棋的實現還是比較簡單的,在寫 之前,你先構建一下遊戲的架構,這樣寫的時候思路比較清晰,不容易思想卡克,很容易就完成。再乙個,你寫的 並不是孤芳自賞的,而是要拿出來給別人看,別人可以清楚地看懂你的 這才是好 我們先來看三子棋的架構如何實現,這就看你的思維邏輯能力了。下面 很清晰的展現了這一架構 v...