【说明】
本程序的功能是生成螺旋方阵,用户可以输入该方阵的行列数,然后就生成对应的螺旋方阵。例如:当n=5时,对应的螺旋方阵如下:
1 16 15 14 13
2 17 24 23 12
3 18 25 22 11
4 19 20 21 10
5 6 7 8 9
【C++代码】
#include"stdio.h"
#include"iostream,h"
int array[11][11];
int temp;
int ROW;
void godown(int &m,int &a)
for(temp=1; temp<=ROW;temp++)
if(array[temp]
- [a]==0)
array[temp][a]= (1) ;
a++;
void goright(int &m,int &b)
for(temp=1;temp<=ROW;temp++)
if(array - [b][temp]==0)
array[b][temp]=m++;
b--;
void goup(int &m.int &c)
for(temp=ROW;temp>0;temp-)
if(array[temp] - [c]==0)
array[temp][c]=m++;
c--;
void goleft(int &m,int &d)
for(temp=ROW;temp>0;temp--)
if(array - [d][temp]==0)
array[d][temp]=m++;
(2) ;
void main()
int a,b,c,d,max,m;
cin>>ROW;
cout>>end1;
for(a=1;a<=ROW;a++)
for(b=1;b<=ROW;b++)
(3) ;
m=1;
a=d=1;
b=c=ROW;
max= (4) ;
whiie(m<=max)
godown(m,a);
(5) (m,b);
goup(m,c);
goleft(m,d):
for(a=1;a<=ROW;a++)
for(b=1;b<=ROW;b++)
printf("%3d ",array[a][b]);
cout<<end1;