这个例子是第53个算法。矩阵是图像算法中的基本算法。灵活的矩阵处理是图像和游戏编程的基本技能。
螺旋矩阵的递归算法
源代码:
#包含' stdio.h '
#包含' stdlib.h '
/*
螺旋矩阵的递归算法
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 8
@作者72编程
微信微信官方账号:72编程
FENWII保留所有权利
@ 2018-07-11
**/
int n,a[100][100];
空隙矩阵(int i,int j,int m)
{
静态k=1;
for(;jn-m;J )//上部
{
a[I][j]=k;
}
j=j-1;
我;
for(;in-m;我)//对
{
a[I][j]=k;
}
I-;
j-;
for(;JM-1;j-)//底部
{
a[I][j]=k;
}
I-;
j;
for(;im;I-)//左
{
a[I][j]=k;
}
我;
j;
中频(mn/2)
{
m;
矩阵(I,j,m);
}
}
int main(int argc,char *argv[])
{
int I=0;
int j=0;
int m=0;
Printf('请输入一个整数 n ');
scanf('%d ',n);
矩阵(I,j,m);
for(I=0;在;I )//输出
{
for(j=0;jn;j)
{
printf('M ',a[I][j]);
}
printf(' n ');
}
getchar();
返回0;
}
/**
PS:标题编辑器暂时不支持代码格式,导致缩进格式丢失。请发送工程源代码的私人信件。如果你发现任何错误,请改正。
**/