三子棋游戏的设计(C语言)

对于一个游戏的设计我们首先为了方便

分别使用game.c 三子棋.c game.h三个文件来完成程序设计

 game.c文件中用来写我们函数代码的具体实行,三子棋.c文件中写上运行的代码,以及一些跟游戏运行无关的函数,比如菜单目录

为了方便调用我们在game.h头文件之中就写好需要用的文件,这样在game.c与三子棋.c文件之中就只需要调用#include"game.h"即可,更加的方便快捷

define定义常量可以方便我们修改行列数,这样我们不仅可以玩3*3的还可以玩任意我们想要的棋盘大小

 接下来是三子棋函数.c文件

这里解释一下srand((unsigned int)time(NULL));此处是以时间戳来实现随机值的随机性,因为时间戳每时每刻都在变化,所以可以是的随机值得以实现,为此我们需要使用#include<time.h>

#include<stdlib.h>两个头文件

如果不明白时间戳的友友,可以看我后续会写一篇关于实现随机变量的文章

下面是game.c

 首先是

初始化函数,这个函数讲初始化我的二维数组为‘ ’ (也就是空格,此时还没有填入数字)

但此时我们发现,运行之后的页面是一篇空白,这个时候对于一个没有接触编程的人来说,他无法进行游戏,所以我们还需要打印函数,打印的内容是---|我们可以使用循环帮助我们打印,在此时我们需要注意的是---只需要打印2行每行需要打印3次 但是|却不需要打印3次只需要打印2次

所以我们这里加入了if条件语句

接下来是玩家函数

玩家输入x,y也就是下的棋子的坐标,这里需要注意的是玩家对于数组的理解是从1开始的,而不是从我们C语言中的0开始的所以我们在写数组的时候需要-1,玩家下完了之后就是打印函数,电脑下棋利用的是随机数,为了是的范围始终不超过2,所以我们使用rand()%row;rand()%col,其中row表示的行,col表示的列,电脑下棋之后也要使用打印函数打印出值,最后我们需要写判断输赢函数,一共了3种情况,分别是电脑赢,玩家赢,平局,为了使得游戏顺利进行,我们还需要加入一个继续函数,只要没有出现赢之前,并且棋盘没有下满之后都要继续下棋,此时我们新写了一个is_full函数,这个函数仅仅用于完善is_win函数,所以我们可以用静态修饰这个函数,这个确保is_full函数只在这个源文件中使用,此时判断需要在三个地方,第一个是玩家下完棋之后判断是否结束,第二个是电脑下完棋之后是否结束,第三个是结束循环之后,判断最后的结果怎样,也就是需要调用三次is_win()函数。至此我们的三子棋游戏便结束了,最后附上运行结果。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值