资源简介
将马随机放在国际象棋的8*8棋盘Board[8][8]的某个方格中,马按照走棋规则进行移动。要求每个方格只进入一次,走遍棋盘上全部64个方格。编制非递归程序,求出马的行走路线,并按求出的行走路线,将数字1,2,3,…,64依次填入一个8*8的方阵,输出之。测试数据可以自行指定一个马的初始位置(i,j),0≤i,j≤7。
代码片段和文件信息
#include
#include
using namespace std;
int incre1[8]={ 2 1-1-2-2-1 1 2};
int incre2[8]={-1-2-2-1 1 2 2 1};
int board[8][8]={0};
int increi[8]increj[8]numstepoutwrite=1;
int countnum(int iint jint a[8]int b[8])
{
int num=0;
int ki1j1;
for(k=0;k<8;k++)
{
i1=i+incre1[k];
j1=j+incre2[k];
if(i1>=0&&i1<=7&&j1>=0&&j1<=7&&board[i1][j1]==0)
{
a[num]=incre1[k];
b[num]=incre2[k];
++num;
}
else
continue;
}
return num;
}
int movenext(int *iint *jint a[]int b[])
{
int nextnum=0a1[
- 上一篇:halcon+opencv相机标定
- 下一篇:复杂网络社团发现代码
评论
共有 条评论