新手 魔方阵出问题了
#include<stdio.h>int main()
{
int x,y,z,a[3][3];
x=0,y=3/2;
for(z=1;z<=9;z++)
{
a[x][y]=z,x--,y++;
if(x<0)
x=3-1;
else if(y>=3)
y=1;
if(a[x][y]!=0)
x=x+1;
printf("%-5d",a[x][y]);
if(y==3)
printf("\n");
}
return 0;
}
#include<stdio.h> int main() { int a[3][3]={0}; int x,y,z; for (z=1,x=0,y=1;;z++) { a[x][y]=z; x--; y++; if (z==9) break; if (x<0) { x=2; } if (y>2)y=0; while (a[x][y]) { y--; if (y<0)y=2; x+=2; if (x>2) x=x-3; } } for (x=0;x<3;x++,printf("\n\n\n")) for (y=0;y<3;y++) printf("%5d ",a[x][y]); return 0; }