思路:
1.找出规律:从a[0][0]=1开始,先向右边走,直到出界或已填过值,再向下走,直到出界或已填过值,在向左走,直到出界或已填过值,在向上走,直到出界或已填过值,重复。
2.划定范围:一共有m*n个数。
3.编写代码:用while循环逐个进行。
4.检查细节:关于等号是否能取到等。
include[HTML_REMOVED]
using namespace std;
int main()
{
int n,m;
scanf(“%d %d”,&n,&m);
int a[100][100]={0},x=0,y=0,t=1;
a[x][y]=t;
while(t[HTML_REMOVED]=0)
{
y–;
t;
a[x][y]=t;
}
while(a[x-1][y]==0&&x-1>=0)
{
x–;
t;
a[x][y]=t;
}
}
int i,j;
for(i=0; i<n; i)
{
for(j=0; j<m; j)
{
printf(“%d “,a[i][j]);
}
printf(“\n”);
}
return 0;
}