C語言簡單五子棋實現

2021-08-24 18:10:26 字數 2029 閱讀 6271

今天我們來看一下用c語言簡單實現五子棋的實現,這裡面只實現了普通功能,如果有需求可以在這個基礎上面完善一下奧。我們先來看一下**

#include

#include

#include

#include

//#define n 16

char qipan[16][16];//全域性變數,整個檔案的都可以用

int x,y;//代表的是棋盤(陣列)下標為x的行 和 下標為y列的乙個交點

//函式宣告

void initqipan();//棋盤的初始化

void printqipan();//列印棋盤

void pos(int x, int y);//設定游標位置

void startgame();//遊戲開始

int panduan(int x,int y);//判斷是否有人連成五子

int showwhowin();//輸出誰贏了

void whiteplay();//白方下子

void blackplay();//黑方下子

void printshuzi();//列印數字模板

void pos(int x, int y)//設定游標位置,從**開始輸出

void printshuzi()

}void initqipan()

void printqipan()

}int panduan(int x,int y)

}//水平的右邊

i=1;

while(temp==qipan[x][y+i]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}//解決垂直的方向

//垂直上方

i=1;

count=1;//清理掉之前的資料

while(temp==qipan[x-i][y]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}//垂直下方

i=1;

while(temp==qipan[x+i][y]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}//解決左上的斜線 上方

i=1;

j=1;

count=1;

while(temp==qipan[x-i][y-j]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}//解決左上的斜線 下方

i=1;

j=1;

while(temp==qipan[x+i][y+j]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}//解決右上的斜線 上方

i=1;

j=1;

count=1;

while(temp==qipan[x-i][y+j]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}//解決右上的斜線 下方

i=1;

j=1;

while(temp==qipan[x+i][y-j]&&x>=0&&x<16&&y>=0&&y<15&&count

<5)

}return whowin;

}int showwhowin()

if(leap==2)

return overleap;

}void whiteplay()

else

}printqipan();

}void blackplay()

else

scanf("%d%d",&x,&y);//座標的值

}printqipan();

}void startgame()

printf("您是否重新遊戲:y or n");

if(getch()=='n')

if(getch()=='y')

}int main()

我們寫了遊戲i額函式呼叫來實現,感興趣的可以去試試奧

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 用於表示棋盤上落子點的座...