C语言_三子棋

引言:当我们C语言学习完数组的时候,可以尝试一些小的游戏来提升自己,比如下面的这个三子棋。

游戏玩法介绍:我们跟电脑进行落棋,但同类型的棋子落在同行、同列以及斜着的情况时即可视为玩家赢,反之电脑赢,还有就是棋盘落满但没有分出胜负视为平局。

项目技能要求:分支语句以及循环语句、函数、数组。

接下来我将创建三个文件:具备函数声明、宏定义、所需库函数的头文件以及还有两个函数实现以及测试代码逻辑的源文件。

项目大纲

在我们正式写项目之前,要先想明白自己想写什么功能,比如:

  • 测试游戏逻辑
  • 菜单
  • 创建并初始化棋盘
  • 打印棋盘
  • 玩家下棋
  • 电脑下棋
  • 判断状态(玩家赢、电脑赢、平局、继续游戏)

函数声明以及宏定义、库函数

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define ROW 3
#define COL 3

//初始化棋盘
void Initboard(char board[ROW][COL], int row, int col);
//打印棋盘
void Displayborad(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);
//判断输赢
//玩家赢 - '*'
//电脑赢 - '#'
//平局   - 'Q'
//继续   - 'C'
char Is_Win(char board[ROW][COL], int row, int col);

在头文件里我们需要添加需要常用的库函数以及对函数的声明,还有宏定义避免后续修改造成麻烦。

函数实现

//初始化棋盘为空格
void Initboard(char board[ROW][COL], int row, int col)
{
   
	int i = 0;
	for (i = 0; i < row; i++)
	{
   
		int j = 0;
		for (j = 0; j < col; j++)
		{
   
			board[i][j] = ' ';
		}
	}
}
//打印棋盘
void Displayborad(char board[ROW][COL], int row, int col)
{
   
	int i = 0;
	for (i = 0; i < row; i++)
	{
   
		int j = 0;
		for (j = 0; j < row; j++)
		{
   
		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值