如何用C语言快速实现三子棋(步骤详细)(一)

简介: 在学习完C语言的函数和数组以后,就可以简易的实现一些小游戏本文章为手把手讲解实现C语言三子棋(好好看,相信不会太难的说)当你自己完成后一定成就感幸福感满满的!!

game.c


前言




检验学习成果最好的方式是实践

在学习完C语言的函数和数组以后,就可以简易的实现一些小游戏

本文章为手把手讲解实现C语言三子棋(好好看,相信不会太难的说)

当你自己完成后一定成就感幸福感满满的!!


问题描述


用C语言实现小游戏三子棋


工具

vs2019


基本思路和流程



三子棋的规则


在3X3的棋盘里,率先将三个棋子连成一条直线则胜出



代码实现思路

1.菜单界面:选择开始或者退出游戏

2.初始化棋盘并打印棋盘

3.玩家选择落子坐标

4.电脑实现落子

5.每次落子判断输赢平还是继续



实现步骤


模块化


1.test.c :写整个游戏实现思路流程

2.game.c: 写游戏实现思路中的各个函数的定义,完成函数内容实现函数功用

3.game.h :引用需要用到的头文件,以及对各个自定义函数的声明

(其他模板上方只需要加上 #include “game.h”,避免重复引用相同头文件)

注:模块化便于管理和修改



菜单界面


比较简单直接上代码

代码

void menu()//游戏菜单
{
  printf("******************************\n");
  printf("**********  1.play  **********\n");
  printf("**********  0.exit  **********\n");
  printf("******************************\n");
}


选择的实现



玩家通过输入1/0 来选择是开始游戏还是退出游戏

用do while语句实现比较适合


menu();
    printf("请开始你的选择:>>>\n");
    scanf("%d", &input);
      switch (input)
      {
        case 0:
          printf("退出游戏成功\n");
          break;
        case 1:
          printf("即将开始游戏\n");
          game();
          break;
        default:
          printf("输入错误:please input your number again!\n");
          break;
      }
  } while (input);


初始化和打印棋盘


棋盘


使用3行3列的二维数组来表示,元素类型是char


char board[ROW][COL] = { 0 };


使用宏定义


1.推高代码可读性,后续代码中遇到3,方便理解含义

2.提高扩展性,如果将来要修改棋盘尺寸,代码修改会很方便


#define ROW 3
#define COL 3


初始化


void Initboard(char board[ROW][COL], int row, int col)//初始化棋盘内容
{
  for (int i = 0; i < row; i++)//行
  {
    for (int n = 0; n < col; n++)//列
    {
      board[i][n] = ' ';
    }
  }
}


打印


考虑如何实现图表


什么时候该打印

什么时候不该打印

打印的间距

换行的考虑


提供代码


void Displayboard(char board[ROW][COL], int row, int col)//打印棋盘
{
  for (int i = 0; i < row; i++)//行数
  {
    for (int j = 0; j < col; j++)//列数
    {
      if (j < col - 1)//第一排内容,控制最后一次不打印‘|’
        printf(" %c |", board[i][j]);
      else
        printf(" %c ", board[i][j]);
    }
    printf("\n");//换行
    if (i < row - 1)//第二排,控制最后一次不打印
    {
      for (int k = 0; k < col; k++)
      {
        if (k < col - 1)
          printf("---|");
        else
          printf("---");
      }
      printf("\n");//同样换行
    }
  }
}



效果图


0.png



相关文章
|
1月前
|
IDE Unix 开发工具
1.6使用C语言的7个步骤后续
在编程过程中,首先通过不同环境下的方法运行程序,如输入可执行文件名或点击图标。接着测试程序运行情况,查找并修正可能出现的错误,即调试。创建程序后还需根据需求进行维护与修改,如修正错误或添加新功能。整个流程非线性,需反复迭代。
67 8
|
1月前
|
编译器 C语言
1.6 使用C语言的7个步骤
在开发C程序时,首先要明确程序目标,即程序需要处理的信息、计算和输出;接着设计程序实现的方法,包括用户界面、程序结构等;随后用C语言编写程序代码;最后通过编译器将源代码转换为特定机器语言的可执行文件,同时链接C库中的标准函数,形成最终可运行的程序。此过程需根据具体编程环境调整相关设置和操作。
54 7
|
5月前
|
C语言
【海贼王编程冒险 - C语言海上篇】C语言如何实现简单的三子棋游戏?
【海贼王编程冒险 - C语言海上篇】C语言如何实现简单的三子棋游戏?
30 1
|
6月前
|
C语言
万字详解:C语言三子棋进阶 + N子棋递归动态判断输赢(二)
我们可以通过创建并定义符号常量NUMBER,来作为判断是否胜利的标准。如三子棋中,令NUMBER为3,则这八个方向中有任意一个方向达成3子连珠,则连珠的这个棋子所代表的玩家获胜。
68 1
|
6月前
|
算法 C语言 C++
万字详解:C语言三子棋进阶 + N子棋递归动态判断输赢(一)
三子棋游戏设计的核心是对二维数组的把握和运用。
81 1
|
6月前
|
编译器 C语言
【C语言入门小游戏】三子棋
【C语言入门小游戏】三子棋
52 0
【C语言入门小游戏】三子棋
|
5月前
|
存储 C语言
三子棋(C语言版)
三子棋(C语言版)
|
5月前
|
程序员 C语言 索引
【️C语言-游戏设置】---三子棋(N满)
【️C语言-游戏设置】---三子棋(N满)
|
6月前
|
人工智能 算法 数据可视化
C语言”三子棋“升级版(模式选择+”模拟智能“下棋)
C语言”三子棋“升级版(模式选择+”模拟智能“下棋)
|
6月前
|
存储 C语言
C语言实现三子棋
C语言实现三子棋
34 0