C語言實現三子棋遊戲。

2021-08-17 23:56:58 字數 1699 閱讀 6584

第一次寫這麼長的c語言**,超級喜歡這樣的遊戲**,難的不是寫出來,難的是讓寫的電腦打敗自己,這也算是智慧型**吧。

在建立棋盤和判斷輸贏上做到了動態, 雖然對對手電腦的智商做了優化,但是優化的**寫的很粗糙,希望自己以後可以寫出來更好的**。

**如下:

game.h  (標頭檔案**)

#include #define row 3

#define col 3

#define count 3

void init(char arr,int row ,int col); //初始化陣列(棋盤)

void print(char arr,int row,int col); //列印棋盤

void playergame(char arr,int row,int col,int x,int y); //玩家選座標

void computergame(char arr,int row,int col); //電腦選座標

int iswin(char arr,int row,int col); //判斷輸贏

int tie(char arr,int row,int col); //平局

test.c  (主函式**)

#include "game.h"

int main()

; while(1)

if(tie(arr,row,col) == 0) //平局

if(arr[r-1][c-1] != 'x')

print(arr,row,col); //列印棋盤

printf("電腦走:\n");

computergame(arr,row,col,r,c); //電腦選座標

if(iswin(arr,row,col) == 0) //判斷輸贏

if(tie(arr,row,col) == 0) //平局

}break;

case 0:

return 0;

default:printf("輸入錯誤,請重新輸入:\n");

} }return 0;

}

game.h  (外函式**)

#include "game.h"

#include #include void init(char arr[row][col],int row ,int col) //初始化陣列(棋盤)

if(y>col || y<1)

if(arr[x-1][y-1] != ' ')

arr[x-1][y-1] = 'x';

}void computergame(char arr[row][col],int row,int col) //電腦選座標

//贏玩家

for(i=0 ;i=0)

}if(tmp/count == 'x')

if(tmp/count == '0')

}} for(i=0 ;i0 && j+con<=col)

}if(tmp/count == 'x')

if(tmp/count == '0')

} }}

int tie(char arr[row][col],int row,int col) //平局

} return 0;

}

三子棋遊戲(c語言實現)

一說到寫個三子棋遊戲,首先我們得想到有個棋盤初始化和棋盤列印函式。接下來,玩遊戲階段,人玩遊戲,電腦玩遊戲,各寫乙個函式,每次下完棋都得判斷有沒有人贏了遊戲,若有人贏了,遊戲退出,否則繼續遊戲。在這過程中,還有可能棋盤滿 了,所以寫個判斷棋盤是否滿的的函式,棋盤滿了,程式結束,沒人贏,此時就平局。當...

C語言實現三子棋遊戲

三子棋是乙個簡單的人機對戰遊戲在3 3的棋盤上,只要有一方下的子連成一條直線則顯示遊戲獲勝,遊戲結束。例如 想要用c語言編寫三子棋其實不難,主要把程式設計的思想順利清楚就很容易實現了。編寫三子棋遊戲我們可以先建立乙個 game.h檔案作為標頭檔案,用來宣告函式和定義一些常亮,在定義乙個game.c檔...

C語言實現三子棋遊戲

先看一下最終效果 void chess board char arr row col int row,int col 初始化棋盤 void mimeograph char arr row col int row,int col 列印棋盤 void player char arr row col in...