#include
int main(int argc,char *argv[]){
char Room9[3][3]={0},i,j,k;
for(i=0,j=k=1;k<10;k++,i--,j++){
if(i==-1 && j<3)i+=3;
else if(j==3 && i>-1)j-=3;
else if(i==-1 && j==3 || Room9[i][j]!=0){
i+=2;
j-=1;
}
Room9[i][j]=k;
}
for(i=0;i<3;i++){
for(j=0;j<3;j++)
printf("%3d",Room9[j][i]);
printf("\n");
}
return 0;
}
#include
#include
#include
main()
{
#define n 3
int a[n][n]={0},i,sum=0,j;
i=0;j=n/2;
a[0][j]=++sum;
while(sum
if(i<0&&j>=n)
{i=i+2;j--;}
else
{if(i<0)
i=n-1;
if(j>=n)
j=0;
}
if(a[i][j]==0)
a[i][j]=++sum;
else
{
i=i+2;
j--;
a[i][j]=++sum;
continue;}
}
for(i=0;i
printf("\n");}
getch();
}
个性签名:3011
一道有意思的数学思考题
你这应该是数独题吧,用回溯算法啊