文档库

最新最全的文档下载
当前位置:文档库 > 螺旋矩阵(C语言)

螺旋矩阵(C语言)

螺旋矩阵问题(C语言实现)

问题:

输入矩阵的行列数,生成螺旋矩阵,比如输入5 6,生产矩阵:

螺旋矩阵(C语言)

#include

#define M 100

voidRataterArray(int array[M][M],introws,int cols)

{

intregcount=rows%2==0?rows/2:(rows+1)/2;//regcount为矩形个数

intseedNum=1;//seedNum初值

for(int i=0;i

{

for(int row=0;row

{

for(int col=0;col

{

//矩形的上边横线

if(row==i&&array[row][col]==-1)

{

array[row][col]=seedNum-i+col;

}

//矩形的右边横线

if(col==(cols-i-1)&&array[row][col]==-1)

{

array[row][col]=seedNum+(rows-2*i)+(cols-2*i)-2-(rows-i-1-row);

}

//矩形的下边横线

if(row==(rows-1-i)&&array[row][col]==-1)

{

array[row][col]=seedNum+(rows-2*i)+(cols-2*i)-2+(cols-i-1-col);

}

//矩形左边竖线

if(col==i&&array[row][col]==-1)

{

array[row][col]=seedNum+(rows-2*i)+(cols-2*i)-2+(cols-i*2)-1+(rows-i-1-row);

}

}

}

螺旋矩阵(C语言)

(共2页)