一.、整体思路
首先第一步 我们试着创建三个工程文件
test.c 它的作用是帮助我们来测试我们的代码是否可以运行
game.h 用来声明我们的函数
game.c 用于函数的实现
然后写我们的主函数,整体框架先写出来。封装一个函数test用来测试
二 、创建菜单
在test中我们来实现游戏菜单的创建
实现功能
1 要让我们可以选择游玩和退出
2 要可以多次游玩
三. 调试整体框架(解决一些bug 完善功能)
菜单创建之后需要设计我们的游戏,但游戏的设计有很复杂,调试的bug会很多,这时候需要我们先打印一个模拟游戏调试我们的整体框架,完善一些功能。
四. 设计游戏(棋盘)
我们说 在下棋的时候想要在上面这样一个棋盘里面来进行游戏
看上去很简单嘛 只需要设计一个3x3的数组 然后再用这样的格式将棋盘包裹再里面就好啦
按照这个思路 我们首先来设计一个3x3的数组
再game.h的头文件里面先定义一个行和列 这样子就可以直接用定义的符号来表示啦
代码如下
再用格式“ %c ” ’|‘,“---” ’|‘,来填充范围,让棋盘有一个整体的框架
五、 玩家下棋
这一步要来设计玩家的行动
我们可以假设玩家使用的棋子是‘*’号 电脑使用的棋子是‘#’号 玩家的每一步都要下在九宫格里面
如果下的位置有棋子已经落了 那么就要提醒玩家重新落子
这里有一点特别要注意!!!
因为玩家有可能并不是程序员 所以我们在设计输入坐标的时候 要加一才可以
六.、电脑下棋
这里我们的电脑就设计的简单一点 让他随机下期就好啦
随机的x y坐标 判断合法性
然后落子
关于如何实现随机数 可以参考下我的这篇文章
完整电脑下棋代码如下
七、 判断胜利条件以及结束条件
我们可以设定一个参数 ret
当ret返回‘*’时 玩家获胜
当ret返回‘#’时 电脑获胜
当ret返回‘Q’时 平局
当ret返回‘C’时 游戏继续
代码如下
以及test.c中game函数的判断
接下来让我们尽情的下棋吧!!!!!