代码运行结果如下
代码实现
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