只要肯花时间,一定会有所成长。
学技术,重在日拱一卒、一点一滴的积累。
今天一起分析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");
}
}
程序运行结果案例:
祝读者:
学有所成;
工作顺利;
事业成功。