一个多年前自己C 写的一个小游戏:五子连珠。代码原创

当初是看到一个大神的五子连珠,自己手痒也模仿一个。(没有深入研究过显示动画和图像,故做出来的可执行文件较大)

开发环境,VC6

开发思路:

一、单窗口程序,界面上画上背景图;

二、背景之上画方格。线尽量立体效果。方格棋盘区的上面画出预展示三个彩球。

三、程序启动,先自动放上3个球(经典版是5个球)。

每挪动一个球时,

1、计算是否可以把球移动过去?

2、如果可移动,那怎么找路径?移动后是否可以消球(加分)?如果不可消球,则加入新彩球。

3、循环操作,直到没有可以移动的小球。最后得分即本局成绩。

通过这个小程序,可以熟练C 开发。类对象,属性和方法的设计。其中最短路径应该最有意思,当然你可以找很多方法,项目中只实现了一个寻路算法。

本程序中寻路算法简单介绍:

1、从起点开始,向4个方向找空格,空则做标记数x=1;

2、从标记数1向4个方向找未做标记的空格,做上标记数 x=x 1 即2;

3、循环找下去,直到到达目标,或者无法到达目标。

4、若能到达目标,则回溯标记路径,找到一个标记数之和最小的路径,即可行的最短路径。

本源代码中,对画图做了简单实现。每次移动小球时,都把背景图贴一次,并重画棋盘。

五子棋小游戏必赢套路(C)(1)

五子连珠 界面

五子棋小游戏必赢套路(C)(2)

代码1

五子棋小游戏必赢套路(C)(3)

代码2

五子棋小游戏必赢套路(C)(4)

代码3

五子棋小游戏必赢套路(C)(5)

代码4

五子棋小游戏必赢套路(C)(6)

经典版本 主界面

,