继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

XYD漫漫
关注TA
已关注
手记 9
粉丝 0
获赞 0

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

 

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

 

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


算法题目:

 

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


http://img3.mukewang.com/6216e1b70001577210800100.jpg

编程思路分析

编程思路: 


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


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



http://img1.mukewang.com/6216e1b8000124b710800100.jpg

程序范例


#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");

}

}


程序运行结果案例:

http://img2.mukewang.com/6216e1df0001553906720237.jpg

祝读者:


学有所成;


工作顺利;


事业成功。



打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP