求大神帮我设计一个5阶魔方方阵.用C语言 不要C++输出如下 17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9 运行出来就是这个
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 02:16:46
![求大神帮我设计一个5阶魔方方阵.用C语言 不要C++输出如下 17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9 运行出来就是这个](/uploads/image/z/1839840-24-0.jpg?t=%E6%B1%82%E5%A4%A7%E7%A5%9E%E5%B8%AE%E6%88%91%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA5%E9%98%B6%E9%AD%94%E6%96%B9%E6%96%B9%E9%98%B5.%E7%94%A8C%E8%AF%AD%E8%A8%80+%E4%B8%8D%E8%A6%81C%2B%2B%E8%BE%93%E5%87%BA%E5%A6%82%E4%B8%8B+17+24+1+8+1523+5+7+14+164+6+13+20+2210+12+19+21+311+18+25+2+9+%E8%BF%90%E8%A1%8C%E5%87%BA%E6%9D%A5%E5%B0%B1%E6%98%AF%E8%BF%99%E4%B8%AA)
求大神帮我设计一个5阶魔方方阵.用C语言 不要C++输出如下 17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9 运行出来就是这个
求大神帮我设计一个5阶魔方方阵.用C语言 不要C++
输出如下 17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9 运行出来就是这个
求大神帮我设计一个5阶魔方方阵.用C语言 不要C++输出如下 17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9 运行出来就是这个
你想求5的话 输入5就行了 会显示输出5阶以下的魔方阵
#include<stdio.h>
void main()
{
int i,j,k,m,n;
int a[20][20];
printf("please input the m:");
scanf("%d",&m);
for(n=3;n<=m;n++)
{
if(n%2!=0)
{
printf("%4d阶魔方阵如下:\n",n);
for(i=0;i<n;i++)
for(j=0;j<n;j++)
a[i][j]=0;
j=n/2;
a[0][j]=1;
for(k=2;k<=n*n;k++)
{
i--;
j++;
if(i<0)
i=n-1;
else if(j>n-1)
j=0;
if(a[i][j]==0)
a[i][j]=k;
else
{
i=(i+2)%n;
j=(j-1+n)%n;
a[i][j]=k;
}
}
printf("\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
printf("%4d",a[i][j]);
printf("\n\n");
}
}
}
}
调试运行吧!