手记

C语言算法之:设计魔方阵

只要肯花时间,一定会有所成长。

 

学技术,重在日拱一卒、一点一滴的积累。

 

今天一起分析C语言的算法之16:设计魔方阵。


算法题目:

 

设计魔方阵:魔方阵就是由自然数组成的方阵,方阵的每个元素都不相同,且每行和每列以及主副对角线上的各个元素之和都不相同。



编程思路分析

编程思路: 


1、用for和if-else语句嵌套实现魔方阵;


2、再用for语句将魔方阵输出显示。




程序范例


#include <stdio.h>


int main()

{

 /*因为数组下标是1-5,所以数组长度是6*/

int i,j;

int x = 1;

int y = 3;

int a[6][6] = {0};   


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

{

/*将1-25存入数组里面*/

a[x][y] = i;   


if(x == 1 && y == 5)

{

 /*当上一行的数是第一行第五列的时候,下一个数放在他的下一行*/

  x =x+1;     

  continue;

}

if(x == 1)   

{

  x = 5;

}

else

{

  x--;

}

if(y == 5)

{

  y = 1;

}

else

{

  y++;

}

/*判断位置上是否有非零数*/

if(a[x][y] != 0)  

{

  x += 2;       

  y -= 1;

}

}

 

/*将魔方阵打印出来*/

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

{

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

  {

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

  }

  printf("\n");

}

}


程序运行结果案例:

祝读者:


学有所成;


工作顺利;


事业成功。



0人推荐
随时随地看视频
慕课网APP