【C语言】小游戏的实现——N子棋
游戏逻辑的基本框架下🚩
开始之前,很有必要先说说游戏逻辑的基本框架,我看许多别的博客基本都是一上来就直接开始代码了,代码的事情并不着急,重要的是我们要先理清楚游戏的逻辑是怎么一回事。这里我会分成两个部分:
1.游戏逻辑💧
🌀游戏可以支持玩家多次玩,反复玩
🌀需要一个菜单界面提示玩家做出选择
🌀游戏需要一个棋盘(基于二维数组)
🌀打印棋盘,看看初始化界面
🌀玩家下棋,输入坐标
🌀判断输赢,打印棋盘,看看效果如何
🌀电脑下棋,产生范围内的随机坐标(可以自己自行设计算法,优化电脑下棋,本篇博客并不讨论此问题)
🌀判断输赢,打印棋盘,看看效果如何
本篇博客将以*作为玩家的棋子,以#作为电脑的棋子
用*来代表玩家赢,用#代表电脑赢,以'Q'代表平局,以‘C’代表继续
2.代码实现💧
通过模块化设计,分为3个部分:
test.c
主函数部分,对游戏的逻辑进行测试运行
game.h
库函数头文件的包含
行列的自定义设置
函数的定义
game.c
游戏功能的实现,即对game.h中定义的函数进行实现
好了,通过上面的介绍对游戏有了一定的认识。下面,进入我们的代码实现部分👇
代码实现🚩
test.c
1.我们知道,要支持玩家多次重复玩游戏,这里采用dowhile循环来实现,无论如何,我们至少都能够进入游戏一次🚀
2.菜单,可通过简单的打印printf提示玩家进行选择,根据玩家的输入我们可以通过switch来作为选择🚀
3.主体部分game()游戏的实现:定义初始化一个棋盘,打印看看效果,while()循环,玩家下棋,打印棋盘,判断输赢
电脑下棋,打印棋盘,判断输赢🚀
下面来一起看看我们的代码🎁
注:上面的函数都会在game.h中定义,接着往下走吧👇
game.h
本游戏以4行4列为例子。当你想改行和列之时,只需要通过改变#define后面的数字即可
注意:#define这里有一个小细节处:那就是定义的数字后面千万不能加分号(;)可千万不要因为敲代码敲多成习惯了❌
game.c
好啦,代码的实现就到这里结束了,下面我们来简单看看运行效果如何,走你🛫
与电脑斗智斗勇🚩
输入1时我们进入了游戏界面,现在我们开始下棋:
这时候我们就可以与电脑斗争斗勇了(这里如果觉得电脑不够灵活的话可以自己设置一个算法,这里只是基于能够让电脑下起棋来,通俗易懂)
最后,不出意外我们赢了!😂
最后,这里还测试了一下10*10
- 点赞
- 收藏
- 关注作者
评论(0)