C语言实现奇数阶魔方阵的方法
本文实例讲述了C语言实现奇数阶魔方阵的方法。分享给大家供大家参考。具体实现方法如下:
#include"stdio.h" #include"string.h" #include"stdlib.h"
#defineN5
voidmain(){ inta[N][N]={0}; inti,j; intk;
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"); } }
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下