假设有九个格子,其中八个格子为1~8的互不相同的数字,另外一个为空,用0表示,现在我们需要将1~8这些数字排列成1,2,3,4,5,6,7,8,0 就像手机上的拼图游戏一样。
程序设计思想:
1) 定义一个结构体,结构体成员为一个二维数组和“0”(空格)的坐标x,y
2)当我们进行上下左右操作时,程序应该交换0和其他数字的位置,编写上下左右函数实现交换,并应控制好越界问题。
3)另外每次交换数字之前,我们都要获取“0”的位置。 对应 find_xy() 函数。
4)获取上下左右键盘的asccii码。
#define UP 72
#define DOWN 80
#define LEFT 75
#define RIGHT 77

这篇博客介绍了一个使用C语言编写的方块拼图游戏。程序通过定义结构体存储数字矩阵和空格位置,实现了上下左右移动数字的功能,避免越界,并能随机生成初始布局,最终检查是否完成拼图。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



