文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>C程序习题-打印"魔方阵"[7.7]

C程序习题-打印"魔方阵"[7.7]

时间:2010-08-06  来源:chengxiaopeng

    打印“魔方阵”。所谓魔方阵是指这样的方阵,它的每一行,每一列和对角和均相等。例如,三阶魔方阵为 8     1     6   3     5     7    4     9     2 要求打印出由1到n平方的自然数构成的魔方阵。 我在baidu上找了魔方阵的一些资料,里面也说了怎么去做,可自己的能力,还是有限,不能编写代码。我在网上找了个代码,经过调试,可以正常运行。这个东西,自己再慢慢的研究。代码如下:  

#include<stdio.h>
#define N 20

int main(int argc, int *argv[])
{
  int a[N][N];
  int n,i,j,r;
  scanf("%d",&n);
  
  for(i=0;i<N;i++)
  {
    for(j=0;j<N;j++)
    {
        a[i][j]=0;
    }
  }
  
  i=0;
  j=n/2;
  a[i][j]=1;
  for (r=2;r<=n*n;r++)
  {
    if (a[(i+n-1)%n][(j+1)%n]==0)
    {
       i=(i+n-1)%n;j=(j+1)%n;
       a[i][j]=r;
    }
    else
    {
         i=(i+1)%n;
         a[i][j]=r;
    }
  }
  
  for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
    {
        printf("%4d",a[i][j]);
    }
    printf("\n");
  }
  system("pause");
  return 0;
}


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载