三步棋,跟着bit鹏哥学得

一共三个文件,观看循序:test.c -> game.h -> game.c

test.c

#include "game.h"
//自己创建的头文件要用""
void menu()
{
	printf("*****************************\n");
	printf("******     0. exit     ******\n");
	printf("******     1. play     ******\n");
	printf("*****************************\n");

}
void game()//这里的game是把用的到的函数全放在这里
{
	//存储数据用的是二维数组
	char board[ROW][COL];
	//row和col是通过头文件#include "game.h"来定义的
	//char表示这个二维数组board的内容是char类型即字符类型


	//是创建一个函数来初始化棋盘,就是给二维数组初始化值
	initboard(board, ROW, COL);
	//要想把数组初始化,就需要把二维数组传过去,还有它的行数列数


	//打印棋盘,其实就是打印二维数组的每个元素
	displayboard(board,ROW,COL);
	//要想打印数组,也需要把二维数组传过去,还有它的行数列数

	char ret = 0;//用来接收游戏状态

	while (1)//因为不可能就下一步棋就完了
	{
		//玩家走一步棋
		playermove(board, ROW, COL);//因为玩家或电脑下棋都是要在二维数组所创建的棋盘上下
		displayboard(board, ROW, COL);//因为玩家下完了,还有打印输出一下,所以再调一次
		ret = win(board, ROW, COL);//win函数对游戏的状态进行判断并返回游戏状态
		if (ret != 'c')
		{
			break;//别忘了,这么代码还在一个while的循环中
		}
		//玩家下完一步棋就判断一次


		//电脑走一步棋
		computermove(board, ROW, COL);
		displayboard(board, ROW, COL);

		//判断输赢,但其实这个函数还有判断出四种结果来
		//因为这个游戏有四个状态,
		//1.玩家赢,函数返回#
		//2.电脑赢,函数返回*
		//3.平局,函数返回q
		//4.继续游戏,函数返回c
		
		//所以函数的类型是char
		// 所以编代码之前要先分析!!!
		ret = win(board, ROW, COL);
		
		if (
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值