NeQrhk 2015-10-20 22:58 采纳率: 50%
浏览 1415

这个马踏棋盘哪里错了?有人帮忙看下吗?

#include“stdio.h"
int count=1;
int dx[8]={-2,-1,1,2,-2,-1,1,2};
int dy[8]={-1,-2,-2,-1,1,2,2,1};
void f1(int a[][8],int x,int y){
int i,j;
printf("count=%d\n",count);
if(count==65){
for(i=0;i for(j=0;j printf("%d ",a[i][j]);
}
printf("\n");
}
}
else{
for(i=0;i x+=dx[i];
y+=dy[i];
if(x>=0&&y>=0&&x<8&&y<8)
if(a[x][y]==0){
a[x][y]=count++;
f1(a,x,y);
a[x][y]=0;
x-=dx[i];
y-=dy[i];
count--;
}
}
}
}
int main()
{
int a[8][8]={0};
f1(a,0,0);
return 0;
}

  • 写回答

3条回答 默认 最新

  • threenewbee 2015-10-20 23:04
    关注
    评论

报告相同问题?