五子棋是一种两人对弈的纯策略型棋类游戏,目标是先在棋盘上形成一个五个棋子连成一线的局面。
本程序实现了人机对战和人人对战两种模式,其中人机对战使用了随机算法来实现电脑下棋。
程序中使用了二维数组来表示棋盘,并通过绘制函数将棋盘展示出来。
使用常量来代表不同的棋子类型,使用函数来判断棋盘状态以及实现下棋逻辑。同时,还实现了保存游戏记录的功能,将游戏记录保存到文件中。
#include<stdlib.h>
#include<stdio.h>
#include<Windows.h>
#include<time.h>
#define 白色 2
#define 黑色 1
#define 空白 0
#define BOARD_SIZE 15 // 棋盘大小
void draw_menu(void);
void draw_chessboard(int row, int col, int chessboard[][BOARD_SIZE]);
void print_chessboard(char chessboard[][BOARD_SIZE]);
void draw_chess(int type, char* tableline);
int is_win(int chessboard[][BOARD_SIZE], int row, int col);
int is_full(int chessboard[][BOARD_SIZE], int row, int col);
void humanVsHuman();
void humanVsAI();
void end_game();
int mun