Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4757324
  • 博文数量: 930
  • 博客积分: 12070
  • 博客等级: 上将
  • 技术积分: 11448
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-15 16:57
文章分类

全部博文(930)

文章存档

2011年(60)

2010年(220)

2009年(371)

2008年(279)

分类: C/C++

2008-11-05 23:04:30

#include<stdio.h>
#include<stdlib.h>
int main()
{
         int a[31][31], i, j, m, n, p = 0;
         while(p == 0)
   {
         system("clear");
         printf("请输入不大于30的奇数:");
         scanf("%d",&m);
         if(m != 0 && m <= 30 && m % 2 != 0)
         break;
   }
         for(i = 1; i <= m; i++)
         for(j = 1; j <= m; j++)
         a[i][j] = 0;
         j = i / 2 + 1;
         a[1][j] = 1;
         for(n = 2; n <= m * m; n++)
   {
         i = i - 1;
         j = j + 1;
       if(i < 1 && j > m)
        {i = i + 2;
        j = j - 1;}
        else
        {
        if(i < 1) i = m;
        if(j > m) j = 1;
        }
        if(a[i][j] == 0)
        a[i][j] = n;
        else
        {
         i = i + 2;
         j = j - 1;
         a[i][j] = n;
        }
    }
         system("clear");
         printf("这个数的魔方阵是:\n");
         for(i = 1; i <= m; i++)
{
         for(j = 1; j <= m: j++)
         printf("%4d",a[i][j]);
          printf("\n");
   }
          return 0;
}



此程序在linux下的编译是
gcc -Wall -g filename.c -o filename
编译器警告选项 -Wal
它的作用是让GCC编译过程中产生更多的警告信息
-g选项的作用是在用GDB调试时用的,所以说如果要进行调试的话这个选项必须加上,否则是不能进行调试的.
-o选项是产生一个重新命名的可执行文件(例如magiccube.c -o magic,这样就文产生一个magic的可执行文件,不加的话产生的是一个名为a.out的文件)

阅读(653) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~