首先進行棋盤初始化
然後列印乙個精緻的(斜眼笑)棋盤-第一次列印一張空白棋盤
玩家落子,然後判斷遊戲是否結束
電腦落子,判斷遊戲是否結束
#pragma once
#define row 3
#define col 3
#include#include#include#includeint iswin(char board[row][col], int row, int col);
void playmove(char board[row][col], int row, int col);
void init(char board[row][col], int row, int col);
void print(char board[row][col], int row, int col);
void computermove(char board[row][col], int row, int col);
#define _crt_secure_no_warnings
#include"game.h"
// 棋盤初始化
void init(char board[row][col], int row, int col)
// 列印棋盤(精緻凱的啟迪)
void print(char board[row][col], int row, int col)
printf("|\n"); }}
// 玩家落子,判斷玩家輸入座標的正確性
// 玩家落子在棋盤用'o'表示
void playmove(char board[row][col], int row, int col)
else
} while (board[m - 1][n - 1] != ' ');
}// 電腦落子,保證其落子隨機性
void computermove(char board[row][col], int row, int col)
} while (board[a][b] != ' ');
}//判斷遊戲結果,玩家贏返回1,電腦贏返回-1,平局返回0
int iswin(char board[row][col], int row, int col)
if (board[0][0] == 'o'&& board[1][1] == 'o'&& board[2][2] == 'o' || (board[0][2] == 'o'&& board[1][1] == 'o'&& board[2][0] == 'o'))
return 1;
int j = 0;
for (;j < row; ++j)
if (board[0][0] == '*'&& board[1][1] == '*'&& board[2][2] == '*' || (board[0][2] == '*'&& board[1][1] == '*'&& board[2][0] == '*'))
return -1;
for (i = 0; i < row; ++i) }
}
#define _crt_secure_no_warnings
#include"game.h"
void menu()
// 遊戲開始進行,玩家和電腦沒走一步都需要判斷輸贏
void game()
if (flag != 0)
computermove(board, row, col);
system("cls");
print(board, row, col);
flag = iswin(board, row, col);
if (flag == -1)
if (flag != 0)
}}// 主函式
int main()
} while (input);
return 0;
}
三子棋遊戲
首先介紹一下三子棋遊戲規則 這是乙個玩家和電腦對戰的三子棋遊戲 棋盤如上圖所示,三個棋子連在一起則勝利 下面就是用c語言實現的方法 建立棋盤 利用二維陣列來實現乙個棋盤,棋盤剛開始是沒有任何棋子的,將二維陣列所有元素初始化為空格即可 玩家下棋 玩家輸入棋盤中的對應座標來下棋,下棋時需要考慮輸入座標合...
三子棋遊戲
閒來無事,竟意外發現了三子棋遊戲,順便實現了這個過程,我們一起來看下。三子棋的實現需要的是五個函式,我用了initboard 初始化棋盤函式 display 列印棋盤函式 player 玩家 computer 電腦 check full 判斷棋盤是否已滿,從而判斷輸贏 game.h define c...
三子棋遊戲
遊戲部分思路 初始化棋盤 玩家下棋 輸出棋盤 判斷輸贏 電腦下棋 判斷輸贏 迴圈這部分,直到有人贏得比賽 效果圖 test,c原始檔 define crt secure no warnings include game.h void menu void game char win init boar...