當前位置:編程學習大全網 - 編程軟體 - 用C語言,輸出“魔方陣”

用C語言,輸出“魔方陣”

#include<stdio.h>

void main()

{

int a[16][16],i,j,k,n;

printf("enter n(n=1 to 15):");

scanf("%d",&n);

for(i=1;i<=n;i++)

for(j=1;j<=n;j++)

a[i][j]=0; //壹定要初始化數組,不然就輸不出結果

if(j=n/2+1)

a[1][j]=1;

for(k=2;k<=n*n;k++)

{

i=i-1; //先寫出壹般規律

j=j+1;

if((i<1)&&(j>n)) //第壹行最後壹個元素,其下壹個元素直接放在它的下面

{

i=i+2;

j=j-1;

}

else

{

if(i<1) //到了第壹行,則其下壹個元素在第n行

i=n;

if(j>n) //到了最後壹列,則下壹個元素轉到第壹列

j=1;

}

if(a[i][j]==0) //如果下壹個元素還沒有被填充,已定的規律由大到小的順序進行輸出

a[i][j]=k;

else

{

i=i+2; //由於原來i減去了1,所以現在要加上1,總***要回去2

j=j-1; //由於原來j加上了1,所以現在要減去1

a[i][j]=k;

}

}

for(i=1;i<=n;i++) //矩陣的輸入模塊

{

for(j=1;j<=n;j++)

printf("%5d",a[i][j]);

printf("\n");

}

}

  • 上一篇:方圖圓圖
  • 下一篇:妳好聲音,如何找到聊天室
  • copyright 2024編程學習大全網