三子棋小遊戲主要運用陣列的相關知識來實現,通過寫這個小專案可以讓我們更加熟練的掌握陣列,以及迴圈的相關知識。
需求分析:
實現乙個三子棋小遊戲,與電腦進行對戰,接下來咱們一起來分析具體的實現過程。
第一步:初始化棋盤並列印棋盤;
第二步:玩家走,走完後列印棋盤,判定輸贏;
第三步:電腦走,走完後列印棋盤,判定輸贏;
第四步:判斷棋盤是否填滿,滿了則為平局。
2、具體實現:
test.c
#include"game.h"
void menu()
void game()
; int ret=0;
initboard(board,row,col);
printboard(board,row,col);
dowhile(1);
if('x'==ret)
else
if('#'==ret)
else
if('s'==ret)
}void test()
}while(input);
}int main()
game.h
#ifndef __game__h_
#define __game__h_
#include
#include
#include
#define row 3
#define col 3
void printboard(char board[row][col],int row,int col);
void initboard(char board[row][col],int row,int col);
void playermove(char board[row][col],int row,int col);
void computermove(char board[row][col],int row,int col);
char iswin(char board[row][col],int row,int col);
int isfull(char board[row][col],int row,int col);
#endif
game.c
#include"game.h"
void printboard(char board[row][col],int row,int col)
}void initboard(char board[row][col],int row,int col)
}}void playermove(char board[row][col],int row,int col)
else
}else
}}void computermove(char board[row][col],int row,int col)
}}int isfull(char board[row][col],int row,int col)
}return
1;//滿了
}char iswin(char board[row][col],int row,int col)
}//處理列
for(i=0;iif(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,col)==1)
return
' ';
}
測試結果:
小遊戲 三子棋
c語言 實現最簡單的三子棋 無人工智慧,介面簡單,手動輸入座標x x 如下 環境 vs2015 game.h pragma once ifndef game h define game h include include include include define row 3 define col...
三子棋小遊戲
簡單版的三子棋遊戲並不難,就只是運用二維陣列和呼叫各個函式。現在來分析遊戲的思路,首先在螢幕上列印乙個選擇遊戲的選單,這個簡單,就只需要呼叫乙個函式輸出就可以了,玩家選擇開始遊戲就進入遊戲函式,首先要初始化二維陣列,可以用memset 來進行初始化,然後在螢幕上列印出三子棋的棋盤,這個也簡單,知識簡...
三子棋小遊戲
game.h define crt secure no warnings ifndef game h define game h include include include include define rows 3 行數 define cols 3 列數void initboard char ...