n次の奇数魔方陣をつくるプログラム
どうしてもエラーが出てしまいます。少なくとも、「int mahojin[n+1][n+1],i,j,k;」あたりの行が間違っているらしいのですが、なぜだかわかりません。アドバイスお願いします!!(スペースが上手く入らなくて、全角スペースを使ってますが気にしないでください。)
#include<stdio.h>
int main(void)
{
int n;
printf("n(ただし、nは奇数)=?");scanf("%d",&n);
int mahojin[n+1][n+1],i,j,k;
j=(n+2)/2;i=0;
for(k=1;k<=n*n;k++){
if((k%n)==1)
i++;
else {
i--;j++;
}
if(i==0)
i=n;
if(j>n)
j=1;
mahojin[i][j]=k;
}
printf(" %d次の魔方陣 \n",n);
for(i=1;i<=n;i++){
for(j=1;j<=n;j++)
printf("%4d",mahojin[i][j]);
printf("\n");
}
return 0;
}