【C语言典例】——day3:设计魔方阵(数组)-创新互联
※※※大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入刷题模式。若有错误,请多多指教。👍 点赞 ⭐ 收藏 📝留言 都是我创作的大的动力!
为锦州等地区用户提供了全套网页设计制作服务,及锦州网站建设行业解决方案。主营业务为网站设计、成都网站建设、锦州网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
目录
魔方阵(magic matrix)
题目描述:
问题分析:
程序源码:
运行结果:
举一反三:
魔方阵(magic matrix)
魔方阵,古代又称“纵横图”,是指组成元素为自然数1、2、…、n的平方的n×n的方阵,其中每个元素值都不相等,且每行、每列以及主、副对角线上各n个元素之和都相等。
幻方,有时又称魔方(该称呼现一般指立方体的魔术方块)或纵横图,由一组排放在正方形中的整数组成,其每行、每列以及两条对角线上的数之和均相等。通常幻方由从1到N2的连续整数组成,其中N为正方形的行或列的数目。因此 N阶幻方有N行N列,并且所填充的数为从1到N2。 [1]
幻方可以使用N阶方阵来表示,方阵的每行、每列以及两条对角线的和都等于常数
,如果填充数为1,2,……,N^2。
,那么有
⒈何谓矩阵?矩阵就是由方程组的系数及常数所构成的方阵。把用在解线性方程组上既方便,又直观。
⒉何谓n阶方阵?若一个矩阵是由n个横列与n个纵行所构成,共有n*n个小方格,则称这个方阵是一个n阶方阵。
⒊何谓魔方阵? 定义:由n*n个数字所组成的n阶方阵,具有各对角线,各横列与纵行的数字和都相等的性质,称为魔方阵。而这个相等的和称为魔术数字。若填入的数字是从1到n*n,称此种魔方阵为n阶正规魔方阵。
⒋最早的魔方阵相传古时为了帮助治水专家大禹统治天下,由水中浮出两只庞大动物背上各负有一图,只有大禹才可指挥其中之由龙马负出的为河图,出自黄河;另一由理龟负出的洛书出自洛河。
⒌最早的四阶魔方阵相传是刻在印度一所庙宇石上,年代大约是十一世纪。古代印度人十分崇拜这种幻方,至今从古神殿的遗址,墓碑上常常还可以发现四阶幻方的遗迹。
⒍欧洲最早的魔方阵是公元1514年德国画家Albrecht Dure在他著名的铜板画Melencolia上的4×4幻方,有趣的是,他连创造年代(1514)也镶在这个方阵中,而且上下左右,四个小方阵的和皆为34,是欧洲最古老的幻方。
题目描述:问题分析:打印5阶幻方即它的每一行,每一列和对角线之和均相等。
(1)将1放在第一行中间一列。
(2)从2开始直到25各数依次按:
(3)每一个数存放的行比前一个数的行数减1,列数加1.
(4)如果上一个数的行数为1,则下一个数的行数为5,列数加1。
(5)当上一个数的列数为5时,下一个数的列数应为1,行数减1.
(6)如果按上面步骤确定的位置上已经有数(本题中不为0),或者上一个数是第1行第5列时,则把下一个数放在上一个数的下面。
程序源码:#include#includeint main()
{
system("COLOR FD"); //改变字体背景颜色
int i, j, a[6][6] = { 0 };
int x = 1, y = 3; //1的位置
for (i = 1; i<= 25; i++)
{
a[x][y] = i;
if (1 == x && 5 == y)
//上一个数是第一行第五列时,则把下一个数放在它的下面
{
x += 1;
continue; //结束本次循环
}
if (1 == x)
x = 5; //当上一个数是第一行时,下一个数是第五行。
else
x--; //否则行数减一。
if (5 == y)
y = 1; //当上一个数是第五列时,下一个数是第一列。
else
y++; //否则列数加一。
if (a[x][y] != 0) //判断经过上面步骤确定的位置是否有非零数。
{
x = x + 2; //条件为真行数加二,列数减一。
y = y - 1;
}
}
for (i = 1; i< 6; i++) //输出二维数组
{
for (j = 1; j< 6; j++)
printf("%4d", a[i][j]);
printf("\n");
}
return 0;
}
运行结果:举一反三: 在本程序的基础上编程实现输入n阶幻方,n的值由用户从键盘中输入。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
文章名称:【C语言典例】——day3:设计魔方阵(数组)-创新互联
当前地址:http://hbruida.cn/article/copeie.html