有如下的八种拼图块,每块都是由八块小正方块构成。
每一种拼图块,可以通过反转和旋转获取不同的摆放,下面以第3个拼图快为例,实现拼图块的反转和旋转存储。
1、模块转数据存储
char a[5][5] = {
{1,1,1,1,0},
{1,0,0,1,0},
{1,0,0,1,0},
{0,0,0,0,0},
{0,0,0,0,0}
};
2、每个模块经过旋转和反转总共有8中图形,定义3维数组用来存放8个char [5][5].
char graphs[8][5][5] = {0};
3、辅助函数将一个二维数组拷贝到另外一个二维数组中
void cp(char a[5][5],char b[5][5])
{
int i;
int j;
for(i=0;i<5;i++)
{
for(j=0;j<5;j+