diff --git a/README.md b/README.md index 5ac41e2..839333a 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,19 @@ -# 五子棋人机对战AI +# 🎲 五子棋人机对战AI ## 项目简介 -基于C语言实现的五子棋人机对战系统,采用α-β剪枝优化的极小极大算法,支持自定义棋盘大小和游戏复盘功能。 +基于C语言实现的五子棋人机对战系统,采用α-β剪枝优化的极小极大算法,支持自定义棋盘大小、游戏复盘和实时评分。 -## 功能特性 +## ✨ 功能特性 - 🎮 人机对战模式 - ⚙️ 可调棋盘尺寸(5x5到25x25) - 🧠 智能AI决策(1-5级难度) - 🔍 完整游戏复盘功能 -- 📊 清晰的终端界面显示 +- 📊 实时对局评分系统 +- ↩️ 悔棋功能(可撤销上一步) +- 🖥️ 清晰的终端界面显示 + +## 🚀 快速开始 -## 快速开始 ### 编译程序 ```bash gcc 五子棋.c gobang.c -o output/五子棋.exe @@ -21,13 +24,33 @@ gcc 五子棋.c gobang.c -o output/五子棋.exe .\output\五子棋.exe ``` -## 游戏玩法 +## 🎯 游戏玩法 1. 启动后设置棋盘大小(默认15x15) 2. 选择AI难度级别(1-5) 3. 输入坐标进行游戏(格式:行 列) -4. 游戏结束可查看完整复盘 + - 输入R/r可悔棋 +4. 游戏结束可查看完整复盘和评分 + +## 💻 开发环境 +- 操作系统: Windows/Linux/macOS +- 编译器: GCC (MinGW on Windows) +- 终端: 支持UTF-8编码的终端 + +## ⚠️ 常见问题 + +### 权限问题 +如果遇到无法创建记录文件的问题: +1. 以管理员身份运行程序 +2. 手动创建records目录 +3. 检查防病毒软件设置 + +### 中文显示问题 +如果遇到乱码: +1. Windows: 确保终端使用UTF-8编码 +2. 添加启动参数: `chcp 65001` + +## 🛠️ 技术实现 -## 技术实现 ### 核心算法 - α-β剪枝优化的极小极大算法 - 3层搜索深度(可调) @@ -37,18 +60,15 @@ gcc 五子棋.c gobang.c -o output/五子棋.exe - 活四/冲四/活三等棋型识别 - 位置权重评估(中心优先) - 双向延伸检测 +- 复盘评分系统(计算双方得分占比) -## 开发说明 -### 代码结构 +## 📂 代码结构 - `五子棋.c` - 主程序(游戏流程控制) - `gobang.c` - 核心算法实现 - `gobang.h` - 公共定义和接口 -### 关键函数 -- `ai_move()` - AI决策入口 -- `evaluate_pos()` - 位置评估 -- `dfs()` - α-β剪枝搜索 -- `check_win()` - 胜负判断 +## 📜 许可证 +自由使用,请注明原作者。 -## 许可证 -自由使用,请注明原作者。 \ No newline at end of file +## 🙋 反馈与贡献 +欢迎提交Issue或Pull Request改进项目!