使用1代表黑棋,-1代表白棋,0代表空。
採用每次下一顆棋,判斷位置是否合法後輸出整個棋盤,在呼叫判斷函式看是否有白棋或者黑棋滿足獲勝條件。若棋子下滿也沒決出勝負則輸出不分勝負。
#include
#include
int x,y,i,j,n;
void
output
(int a[
10])//輸出棋盤
}//判斷語句
intjudge
(int a[
10])else
continue;}
return0;
}void
main()
;output
(a);
for(i=
0;i<=
50;i++
)else
if(a[x]
[y]==0)
else
n=judge
(a);
if(n==1)
else
printf
("請輸入白棋位置(輸入座標,中間用空格隔開)\n");
scanf
("%d %d"
,&x,
&y);
if(a[x]
[y]==0)
else
n=judge
(a);
if(n==-1
)}if(n==0)
}
執行效果圖:
有不懂的,歡迎提問,僅供娛樂。
C語言五子棋
實戰五子棋 思路 1.棋盤由邊緣數字和橫豎線及棋子構成 2.先init初始化,畫出棋盤的數字邊緣,為了第一次下棋的時候能看見棋盤樣子,其實可以封裝起來用 3.落子之後呼叫draw cross畫出整個棋盤,依舊是先畫邊緣數字,再畫棋子,一行一行畫 4.判斷輸贏。include include defi...
五子棋(C語言)
問題描述 在乙個10 10的棋盤中進行人機對戰 在這之前寫了一篇三子棋的 五子棋與其原理相似,主要區別在於判斷輸贏上,10 10的棋盤,贏的條件是每行,每列,或正反對角線上有五個連續相同的棋子。標頭檔案 fivechess.h ifndef fivechess h define fivechess ...
C語言五子棋
include 呼叫圖形庫函式 include getchar 標頭檔案 include 標準輸入輸出標頭檔案 void game void play int judge int a,int b int flag 0 用於記錄和區分棋手1或2 int board 20 20 用於表示棋盤上落子點的座...