c语言 三子棋详细解析 (零基础也能看懂)附源码 c语言小游戏

代码运行结果如下
在这里插入图片描述

代码实现

test.c(测试游戏的逻辑)
game.h(关于游戏相关的函数声明符号声明)头文件包含的

game.c游戏相关函数的实现

test.c

游戏如何玩
希望游戏玩完一把还可以继续玩
/
*
用dowhile形式 (无论如何都会进去一次 打印一个菜单)

打印菜单
void menu()
{
   

	printf("***************************\n");
	printf("*********  1.play   ********\n");
	printf("*********  0.exit   *******\n");
	printf("***************************\n");


}
int main()/*希望游戏玩完一把还可以继续玩*/
{
   
	do
	{
   
		menu();
	} while ();

	return 0;
}
//上面代码的意思就是按下运行后会在屏幕上打印一个菜单 菜单的内容就是printf的里  像一个图案。

打印完字符 给用户一个反馈 让用户知道要干嘛 然后用户要选择 1 还是2 所以用scanf接收

int main()/*希望游戏玩完一把还可以继续玩*/
{
   
	do
	{
   
		int input = 0;
		menu();
		printf("请选择");
			scanf("%d",&input)//比如用户选择1 输入了1这个scanf就起到了接受的作用,input就是把选择的值存起来
	} while ();

	return 0;
}


然后根据他选的值作出反应 下面代码如下

int main()/*希望游戏玩完一把还可以继续玩*/
{
   
	int input = 0;
	do
	{
   
		
		menu();
		printf("请选择");
		scanf("%d", &input);
			switch (input)
			{
   
			case 1://选择1做出的反应
				printf("三子棋游戏\n");
				    break;
			case 0:
				printf("退出游戏\n");

					break;
				default://如果选择的不是0也不是1,会跑到这里
					printf("输入错误,重新选择\n");
					break;
			}//break 跳出的是switch语句会来到这里 执行下面的
	} while (input);//不管做了哪种选择最后这里进行判断放入input。解析为啥input 因为如果选择1 玩完后break跳出来 下面while(1)又执行一遍 我们的玩完还想玩目的就达到了。直到选择0while(0)为假跳出来


	return 0;
}

在这里插入图片描述
default作用如下
在这里插入图片描述
**解析为啥input 因为如果选择1 玩完后break跳出来 下面while(1)又执行一遍 我们的玩完还想玩目的就达到了。直到选择0while(0)为假跳出来
**


完成了初步接下来我们就可以来进入三子棋了 用到game函数 放到case1下 调用下函数, 函数实现还得main在上面
voidgame 不需要返回 里边只要是三子棋运行逻辑就行三子棋都在这里完成
game函数实现分析如下
根据我们的运行结果可以得出如下
在这里插入图片描述
一个字也没下的时候是这样的
**
在这里插入图片描述
1.玩家下一个电脑下一个 发现玩家下完电脑下的时候 玩家的旗子还在 还有记录 电脑玩家同理
2.下完之后要记录 由图可以看出我们这是一个3×3的格子,所以我们可以用一个3×3的二维数组来记录
** 3.没有落子的时候是空的所以是空格 玩家落子给*号电脑落子给#号

#define  _CRT_SECURE_NO_WARNINGS  1
#include <stdio.h>//游戏如何玩
void game()
{
   
	//游戏的运行需要存储数据  所以用到了二维数组 二维数组的创建用到了char因为游戏的实现用到的都是字符 *#类似的
	char board[3][3]//board是自己定义的 我用了board是为了更容易理解
	**3×3可能不够 用了就得改比较麻烦 关于棋盘大小是游戏的一些属性了所以咱们直接写到game.h里**
}
void menu()
{
   

	printf("***************************\n");
	printf("*********  1.play   ********\n");
	printf("*********  0.exit  *******\n");
	printf("***************************\n");


}
int main()/*希望游戏玩完一把还可以继续玩*/
{
   
	int input = 0;
	do
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值