不知道哪里错了,求大神帮忙,
# include<stdio.h># include<stdlib.h>
int a[8][8]={0};
int x[8];
int place(int k)
{
int i;
for(i=0;i<k;i++)
{
if(x[i]!=x[k]&&abs(i-k)!=abs(x[i]-x[k]))
return 1;
}
return 0;
}
void print()
{
int i,j;
for(i=0;i<8;i++)
{
for(j=0;j<8;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}
void backtrack(int t)
{
if(t>=8)
{
print();
return;
}
for(int i=0;i<8;i++)
{
x[t]=i;
if(place(t))
{
a[t][i]=1;
backtrack(t+1);
a[t][i]=0;
}
}
}
void main()
{
backtrack(0);
}