C语言项目
三子棋
实现思想
大家都玩过五子棋,也对五子棋的游戏规则不陌生,今天我们就仿照五子棋做一个三子棋,以函数模块为进行封装逐步实现,并且实现一个万能算法,可以达到n*n的棋盘上玩n子棋(前提是屏幕够大)。
实现具体思想很简单,先做出菜单,然后根据玩家选择执行不同的内容函数,如果选择游戏则开始三子棋的游戏主体函数,执行完成之后重新执行菜单,知道玩家选择退出游戏!
三子棋的主体游戏思想也很简单,用一个数组表示棋盘,每一个回合开始前先打印棋盘,随后让玩家进行坐标选择要落子的地方,此时注意 要判断玩家输入是否合法,玩家输入后将棋盘上的数据进行更改,并判断是否已经分出胜负,未结束的话是由电脑随机选择坐标进行落子(在这里我们暂时先进行简单的设计,让电脑随机落子),电脑落子完成后也要判断是否游戏已经结束,未结束的话重新打印棋盘即可完成一个循环。在游戏中我们应该考虑到游戏有三中胜负情况,分别是:玩家胜、电脑胜和平局。
实现代码
1 | /*! |
在这里值得一提的是我用来判断是否获胜的算法,算法可总结为以落子为中心,向横纵正斜和反斜四个方向分别计数,以达到统计是否已经连子获胜的目的。