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