函式宣告寫在標頭檔案game.h中
#ifndef __game__h_
#define __game__h_
#define row 3
#include#includevoid initboard(char board[row], int row, int col, char set);
void showboard(char board[row], int row, int col);
void playermove(char board[row], int row, int col);
char iswin(char board[row], int row, int col);
void computermove(char board[row], int row, int col);
#endif
主體功能的實現在test.c中
#define _crt_secure_no_warnings 1
#include"game.h"
void menu()
void game()
;// 定義乙個字元型別3*3的二維陣列
initboard(board, row, row, ' ');//將棋盤初始化為空格
showboard(board, row, row);//列印棋盤
while (1)//只要有一方勝出,結束迴圈
showboard(board, row, row);//show玩家下完後的棋盤
computermove(board, row, row);//電腦下棋
ret = iswin(board, row, row);//判斷輸贏
if (ret != ' ')
showboard(board, row, row);
} if (ret == 'x')
if (ret == ' o')
if (ret == 'q') }
int main()
} while (input);
return 0;
}
函式的實現放在game.c中
void showboard(char board[row], int row, int col)
} printf("\n");
if (i < row - 1)
}printf("\n");
} }}void playermove(char board[row], int row, int col)
else
}else
}}static int isfull(char board[row], int row, int col)
} }return 1;
}char iswin(char board[row], 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, row))
}return ' ';//誰也沒有贏
}void computermove(char board[row], int row, int col)
}}
加油鴨~~ C語言小程式 用二維陣列實現三子棋
三子棋想必對於大家來說並不陌生,三子棋是一種民間傳統遊戲,又叫九宮棋 圈圈叉叉 一條龍 井字棋 田字棋等。將正方形對角線連起來,相對兩邊依次擺上三個雙方棋子,只要將自己的三個棋子走成一條線,對方就算輸了。但是,有很多時候會出現和棋的情況。利用c語言編寫三子棋的 相對來說比較簡單,三子棋其實就可以看作...
用二維陣列實現簡單三子棋遊戲
用二維陣列實現簡單三子棋遊戲 環境 vs2013 define crt secure no warnings define hang 3 define lie 3 include include include void menu 選單 qipan2 int a,int b 初始話棋盤格仔 prin...
C語言 三子棋
使用工具 vs2017 分為三部分 game.h 函式宣告 game.c 實現函式功能 test.c main函式 棋盤為3 3的矩陣 規則 1.每回合玩家與電腦只能放置一枚棋子 2.已有棋子的位置不能再放置棋子 3.若有一方的三枚棋子可連城一條直線,則勝利 4.若棋盤棋子已經布滿,但是雙方沒有一方...