C语言小白急救 ‘三子棋编写’(千字教程)

相信大家在生活中都玩过三子棋,在我们C语言的学习过程中,这也是一个操作性较强的小游戏,这样有趣的项目既可以培养我们的学习兴趣,也可以增强我们的代码编写能力,现在,让我来为大家分享一下我的编写过程

0.编写界面

由于三字棋的整体代码所占用的空间较多,如果全部发在一个源文件中,看起来的比较麻烦,所以,我将代码分到了三个部分:

operation.c  主代码,用于运行

board.c    主要放置游戏各个功能的实现代码

board.h     用于放置函数声明

1.基础实现

在基础运行中,我们要先实现游戏的基础运行,包括一个拥有如下功能的游戏菜单

  1. 游戏的进入
  2. 游戏的退出

以及对于玩家的操作做出相应的回应

C语言小白急救 ‘三子棋编写’(千字教程)_第1张图片

2.游戏主体功能的实现

2.1 棋盘初始化

在游戏刚开始时,我们需要对棋盘进行初始化操作,为棋盘设定一块空间,以保证后续游戏的进行,我们需要对棋盘进行初始化操作,

1.图片中上部的ROW与COL是自定义的便于对棋盘大小进行更改的符号,如果想更改棋盘大小可以直接更改后面的数字

2.接下来就是头文件中的定义(在主体对相应函数进行调用时,需要先进行声明),以及相应的初始化函数

 

C语言小白急救 ‘三子棋编写’(千字教程)_第2张图片

2.2 棋盘显示

在完成棋盘的初始化操作后,我们需要将初始化后的棋盘展现出来,以便玩家进一步的游戏,在这一步操作中,我们需要注意:

为了棋盘的美观性,我们需要在周围打印出一些边框,这些边框的操作较易犯错,相应的注释已写在图中,也可以根据自己喜好自行修改

C语言小白急救 ‘三子棋编写’(千字教程)_第3张图片

 2.3 玩家操作

接下来我们来实现玩家操作这一功能,在实现这一功能的过程中,我们需要注意以下几点: 

1.由于数组下标是从0开始,所以我们想要接受到玩家的指令,需要进行-1

2.玩家是否输入了超出范围,即错误的代码

3.下棋的位置是否已经有子

C语言小白急救 ‘三子棋编写’(千字教程)_第4张图片

2.4 电脑操作

在玩家下完棋后,电脑也会相应的进行下棋,一下代码就是进行的电脑下棋操作,

1.这里我使用了srand 、 rand 和 time来生成一个随机值,前两个库函数的头文件是:,后一个是:,其中srand函数只需要调用一次即可,所以我将其放到了主函数中 :srand((unsigned int)time(NULL));  其中,srand函数中需要存放一个无符号整形,所以我将time函数的值改为了(unisigned int),time(NULL)可以获取一个随机的时间戳,即一串数字,在经过rand函数的接受后,可以通过%row和%col转换为符合条件的数字

2.电脑操作的时候也要注意不能放置在已经存在点的位置

C语言小白急救 ‘三子棋编写’(千字教程)_第5张图片

2.5 判断输赢

在操作完成之后,为了评定游戏的输赢,我们需要进行判断,

1.水平,竖直或者斜线方向有三个字相同即为那边赢

2.若已经没有位置可以下子,即为平局;上部的Full函数就是用来判满的

 C语言小白急救 ‘三子棋编写’(千字教程)_第6张图片

 2.6 主体执行

下面就是我们进行调试的代码,通过他完成对于函数的引用

C语言小白急救 ‘三子棋编写’(千字教程)_第7张图片

3.整体函数代码及运行结果展示

operation.c

C语言小白急救 ‘三子棋编写’(千字教程)_第8张图片

 board.c

C语言小白急救 ‘三子棋编写’(千字教程)_第9张图片

 board.h

C语言小白急救 ‘三子棋编写’(千字教程)_第10张图片

运行结果:

 C语言小白急救 ‘三子棋编写’(千字教程)_第11张图片

你可能感兴趣的:(c语言,开发语言)