c++实现三子棋

本文介绍了如何使用C++实现三子棋游戏,包括开始菜单、显示棋盘、玩家和电脑下棋、判断输赢等功能。游戏逻辑通过二维数组表示棋盘,头文件用于函数声明,game函数文件实现具体功能,主函数调用这些功能。
摘要由CSDN通过智能技术生成

C++实现三子棋


游戏架构实现

1.出现开始菜单选择是否进行游戏

1.1.选择是否进行游戏

2.显示棋盘

2.1.遍历二维数组中每一个元素,打印棋盘

3.玩家选择坐标进行下棋

3.1.对玩家的坐标进行判断

3.2.判断该坐标是否存在棋子

4.电脑进行随机坐标下棋

4.1.对随机产生的坐标进行判断直至满足条件

5.每次落子后进行判断输赢

6.打印当前棋盘

二、代码介绍

1.头文件

###1.1主要用于函数声明,以及对棋盘的大小进行初始化
头文件的作用:
1.方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明;
  2. 使函数的作用域从函数声明的位置开始,而不是函数定义的位置(实践总结)
  3 .提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h)。

代码如下():

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define ROW 3
#define COL 3


//初始化棋盘
void InitBoard(char board[ROW][COL], int row, int col);
//打印棋盘
void DisplayBoard(char board[ROW][COL], int row, int col);
//玩家下棋
void PlayerMove(char board[ROW][COL], int row, int col);
//电脑下棋
void ComputerMove(char board[ROW][COL], int row, int col);
//检查输赢
char CheckWin(char board[ROW][COL], int row, int col);


2.game函数文件

对头文件中的声明过的函数进行编写,完成函数功能
这样做的好处就是,对于未来想更改代码时,只需要对该文件中的函数块进行更改,不需要耗费大量的时间在主函数中更改。

代码如下(示例):

#define _CRT_SECURE_NO_WARNINGS 1

#include"game.h"
//实现初始化棋盘函数,将二维数组中的每一个元素先初始化为空格
void InitBoard(char board[ROW][COL], int row, int col)
{
   
	//遍历数组中的每一个元素
	int i = 0;
	int j = 0;
	for (i = 0; i < row; i++)
	{
   
		for (j = 0; j < col; j++)
		{
   
			board[i][j] = ' ';
		}
	}
}
//棋盘显示函数
void DisplayBoard(char board[ROW][COL], int row, int col)
{
   

	//这种写法不便于扩展,当打印多行多列时不能满足要求
	//int i = 0;
	//for (i = 0; i < row; i++)
	//{
   
	//	//打印数据
	//限制了只能出现三列棋盘(不好,代码的扩展性不够)
	//	printf(" %c | %c | %c \n", board[i][0], board[i][1], board[i][2]);
	//	//打印分割的行
	//	if (i < row - 1)
	//		printf("---|---|---\n");
	//}
	//打印数据
	//下面使用循环嵌套,可以避免上述出现不能打印多行多列的情况
	int i = 0;
	for (i = 0
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值