算法思想:
1.设置i和j表示元素的坐标,count表示计数,level表示层数,创建矩阵
2.当count小于等于100时执行,按照右下左上的顺序来赋值,当发生越界时需要运动i和j,每执行完一层则令level加一。
void spiralMatrix()
{
int i=0,j=0;
int count = 1;
int A[10][10];
int level = 0;
while(count<=100)
{
while(j<=9-level){
A[i][j++] = count++;
}
i++;j--;
while(i<=9-level){
A[i++][j] = count++;
}
i--;j--;
while(j>=level){
A[i][j--] = count++;
}
j++;i--;
level++;
while(i>=level){
A[i--][j] = count++;
}
i++;j++;
}
for(int i = 0;i<10;i++)
{
for(int j=0;j<10;j++)
printf("%d ",A[i][j]);
printf("\n");
}
}