好了,言归正传
目录
一、问题描述
二、基本流程(与实现)
1.菜单界面选择开始或者退出游戏。
2.创建棋盘并初始化。(开始全部初始化为空格)
3.打印棋盘。
5.电脑落子(随机位置落子) ,'#’表示电脑落子。
6.判定胜负关系。
7.回到 步骤2 继续执行。
三、代码实现
一、问题描述
用c语言实现三子棋。
在写三子棋的代码之前,我们来看看实现这个游戏的逻辑:
我们通过输入的数字来进行参与游戏,是1则参与游戏,是0则结束游戏,如果输入其他数字则打印输入错误,重新输入。大家看到这个根据输入的数字来进行不同的 *** 作,有没有想到switch语句呢?我们就通过这个来实现它,
我是将函数都声明在头文件里面的,并且看define定义的小细节
2.创建棋盘并初始化。(开始全部初始化为空格)
因为我们设计的是三子棋,所以我们看成是一个字符数组,三行三列,又因为这是棋盘,我们直接把数组名写成board[ROW][COL]
用ROW表示行,COL表示列
3.打印棋盘。
打印出来就是这个样子
4.玩家下棋(玩家输入行列坐标的方式来落子),'*’表示落子。
棋盘都有了,那肯定是就开始下棋了
下棋是玩家和电脑下棋
5.电脑落子(随机位置落子) ,'#’表示电脑落子。
为了保证电脑下棋的随机性,我使用了rand函数。记得rand函数要搭配srand使用,并且还要引头文件。
6.判断输赢
当玩家或者电脑在行,列或对角线连成线的时候就赢了。然后在判断是否棋盘还有空格继续游戏,有空格就继续下去,没有就是平局。
我
7.回到 步骤2 继续执行。 三、代码实现
已经掺在步骤中了,嘿嘿
最后我觉得还可以增加system("cls");清屏后让界面更简洁,或者美化棋盘这种。
要是有能力还可以写一个电脑的AI算法,让电脑下棋更智能。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)