main()
{
int i,j,x,y;
for(i=0;i<8;i++)
{
for(j=0;j<8;j++)
{
x = i+2;y=j+1; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i+1;y=j+2; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i+2;y=j-1; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i+1;y=j-2; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i-1;y=j-2; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i-2;y=j-1; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i-1;y=j+2; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
x = i-2;y=j+1; if(x>=0&&x<8&&y>=0&&y<8)printf("%d %d\n",x,y);
}
}
}
输出结果为:马在任意一个格子所对应的走法.
给个算法吧
以当前马的位置为中心点,从12点的位置顺时针方向可以找到8个马可以跳的位置,再判断是不是超出8X8的格子就可以了
这是一个四层的树形结构,最后输入第四层的所有节点,尽量自己写吧,有问题再问,我资料里有联系方式
不太清楚
5745