时间:2021-05-20
本文实例讲述了C语言实现奇数阶魔方阵的方法。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下:#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#define N 5
void main(){
int a[N][N]={0};
int i,j;
int k;
i = 0;
j = N/2;
a[0][j]=1;
for(k = 2; k <= N*N; k++){
if( i == 0 && j == N-1 ){//先判断前一个数是不是最右上角的数,若是后一个数直接填在前一个数下方
i=i+1;
a[i][j] = k;
continue;
}
i = (i-1+N)%N;//计算前一个数右上角的坐标
j = (j+1)%N;
if(a[i][j] != 0){//若前一个数的右上角有元素,后一个数直接填在前一个数下方
i = ((i+1)%N+1)%N;//恢复坐标
j = (j-1+N)%N;
a[i][j] = k;
}else{//上述条件均不满足,后一个数放在前一个数的右上角
a[i][j] = k;
}
}
for(i = 0; i < N; i++){
for(j = 0; j < N; j++){
printf("M",a[i][j]);
}
printf("\n");
}
}
测试数据如下:
N = 3
8 1 6
3 5 7
4 9 2
希望本文所述对大家的C语言程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
魔方阵说明:魔方阵是一个N*N的矩阵;该矩阵每一行,每一列,对角线之和都相等;魔方阵示例:三阶魔方阵:816357492每一行之和:8+1+6=15;3+5+7
例如三阶魔方阵为:魔方阵有什么的规律呢?魔方阵分为奇幻方和偶幻方。而偶幻方又分为是4的倍数(如4,8,12……)和不是4的倍数(如6,10,14……)两种。下面
本文实例讲述了C语言实现BMP转换JPG的方法。分享给大家供大家参考。具体实现方法如下:/***********************************
本文实例讲述了C#实现将一个矩阵分解为对称矩阵与反称矩阵之和的方法。分享给大家供大家参考。具体如下:1.理论依据对任意n阶方阵A,有A=(A+T(A))/2+(
本文实例讲述了基于C语言实现的迷宫算法。分享给大家供大家参考,具体如下:利用c语言实现迷宫算法,环境是vc++6.0.#include#include#incl