帮我改改这个程序(打印魔方阵)
main(){
int i,j,n,k,a[100][100];
printf("Please input n(odd,3~99):\n");
scanf("%d",&n);
for(i=1,j=(n+1)/2,k=1;k<=n*n;i--,j++,k++)
{
if(i==0 && j==n+1)
{i=2;j=n;}
if(i==0) i=n;
if(j==n+1) j=1;
if(a[i][j]!=0)
{i=i+2;j=j-1;}
a[i][j]=k;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%5d",a[i][j]);
printf("\n\n");
}
}