三子棋游戏(C语言/C++)

前言

三子棋是一种民间传统游戏,又叫九宫棋、圈圈叉叉棋、一条龙、井字棋等。游戏分为双方对战,双方依次在9宫格棋盘上摆放棋子,率先将自己的三个棋子走成一条线就视为胜利,而对方就算输了,但是三子棋在很多时候会出现和棋的局面。

设计思路

我们可以设置三个文件:game.h, game.c, test.c 在game.h对函数声明和引用头文件,game.c里对游戏需要的函数定义,test.c里实现程序的测试。我们首先需要设置玩游戏的菜单,然后打印出棋盘,玩家下棋,电脑下棋,最后判断输赢。

程序的具体实现

test.c

三子棋游戏(C语言/C++)_第1张图片

test.c代码的分析

  1. 首先用do while和switch实现函数的选择,其中要注意input的取值(注意1为真,0为假,非0等于1的知识)

三子棋游戏(C语言/C++)_第2张图片
  1. menu菜单的打印

三子棋游戏(C语言/C++)_第3张图片
  1. 在game()里面设置游戏需要的函数的引用(其中的函数会在game.c里面介绍)和判断输赢和平局('c'继续游戏,'*'玩家赢,'#'电脑赢,'q'平局)

三子棋游戏(C语言/C++)_第4张图片

game.c

三子棋游戏(C语言/C++)_第5张图片

game.c代码的分析

  1. 用空格' '初始化棋盘

三子棋游戏(C语言/C++)_第6张图片
  1. 打印棋盘

三子棋游戏(C语言/C++)_第7张图片

其中“|”一个循环只打印2次,“---”只打印两行

三子棋游戏(C语言/C++)_第8张图片
  1. 玩家下棋

因为玩家不是程序员,需把0~2的坐标设为1~3,且还需注意被占用的坐标和非法坐标不能下。

三子棋游戏(C语言/C++)_第9张图片
  1. 电脑下棋

为了让电脑下棋我们需给它设置一个随机数,则我们需要设置一个时间戳(它被设置在main函数当中)

三子棋游戏(C语言/C++)_第10张图片
  1. 判断输赢,平局还是继续

返回'c'继续游戏,返回'*'玩家赢,返回'#'电脑赢,返回'q'平局

三子棋游戏(C语言/C++)_第11张图片

IsFull函数是判断是否平局的,是则返回1,不是则返回0。

三子棋游戏(C语言/C++)_第12张图片

game.h

对头文件的定义和游戏函数的声明

三子棋游戏(C语言/C++)_第13张图片

总结

三子棋结合来看其实总体不难,最重要的就是对代码逻辑性的掌握要熟练,思路要清晰。要想实现这两点,只需多敲代码多思考


好啦,到这就结束了,感谢各位姥爷的观看,喜欢的话就给个三连吧

你可能感兴趣的:(C语言,c++)