三子棋 用c語言實現

2021-09-22 23:04:45 字數 1394 閱讀 3375

問題描述

三子棋就是雙方落棋子,直到其中一方所落棋子行,列或者對角線連成一條線。或者棋下滿,這一種情況是平局。

問題分析

三子棋就是和計算機你一步我一步來實現。首先,得先製作乙個選單提示使用者玩還是退出,這裡用switch語句較為合適一些

我們使用幾個標記,x表示人下的棋子,o表示計算機下的棋子 ,n表示繼續下,e表示平局。

而接下來就是遊戲整體部分的實現,首先得建立乙個棋盤並且初始化,這裡定義乙個函式iintboard()來實現,接下來就是展示棋盤,自定義乙個showboard()函式來實現。然後就是下棋,這裡我們讓人先來下,自定義乙個函式playpeople(),人下完之後應該再展示一下棋盤,再showboard()。接著就是判斷當前這步走完之後是贏還是繼續又或者是平局。判斷完人之後就是電腦來下,我們使用playcomputer()來實現,之後再判斷一次。最後就是判斷返回值究竟是人或者計算機贏,還是平局。

#include#include#define row 3

#define col 3

void initboard(char board[col],int row,int col)

else

printf("please try again");

}}}int getrandom(int start,int end)

int is_full(char board[col],int row,int col)

}return 1;

}char judgeboard(char board[col],int row,int col)

}for(i=0;i} if(a[0][0]==a[1][1]]==a[2][2]) //判斷主對角線

if(a[0][1]==a[1][1]==a[2][0]) //判斷另乙個對角線

if(is_full(a)) //判斷棋盤是否下滿

else

return 'n '; //以上情況都不是繼續下棋

}void playcomputer(char board[col],int row,int col)

}}void game()

playcomputer(board,row,col);

showboard(board,row,col);

result=judge(board,row,col);

if(result!='n')

}switch(result) }

void showmenu()

int main()

}return 0;

}

用C語言實現三子棋

首先我們需要建立兩個原始檔分別為test.c與game.c前者為遊戲的測試,後者為遊戲相關函式的定義,同時建立相應的名為game.h的原始檔宣告相關函式。接下來可以開始搭建主函式框架了,因為不管如何,都會至少進入一次遊戲,由玩家確定退出或繼續,因此,筆者在該處運用do while迴圈實現基本框架。i...

三子棋遊戲(用C語言實現)

一.具體實現 1.棋盤初始化 memset 2.棋盤的展示 3.電腦下棋 4.玩家下棋 5.判斷輸贏 三字連珠 判斷輸贏的時候有四種情況 1.玩家贏 2.電腦贏 3.平局 4.還沒下完,繼續遊戲。電腦下棋為o,玩家下棋為x,棋盤初始化為空 二.框架 原始檔main.c 用於存放主函式 include...

C語言實現三子棋

game.h define crt secure no warnings 1 ifndef game h define game h include include include include define rows 3 define cols 3 void init board char bo...