请大神帮忙看看,为什么没有输出?
程序代码:/*输出环形矩阵,如:
输入 5 6 效果如下
1 1 1 1 1 1
1 2 2 2 2 1
1 2 3 3 2 1
1 2 2 2 2 1
1 1 1 1 1 1
*/
#include<cstdio>
void main()
{
const int max=30;
int m,n;
int a[max][max];
printf("input the integer m,n");
scanf("%d,%d",&m,&n);
int k=0; //一圈为一层,层数
int counter=1;
while(counter<=m*n)
{
for(int i=k,j=k;j<=n-k-1;j++) //向右
{
a[i][j]=k+1;
counter++;
}
for(int i=k+1,j=n-k-1;i<=m-k-1;i++) //向下
{
a[i][j]=k+1;
counter++;
}
for(int i=m-k-1,j=n-k-2;j>=k;j--) //向左
{
a[i][j]=k+1;
counter++;
}
for(int i=m-k-2,j=k;i>k;i--) //向上
{
a[i][j]=k+1;
counter++;
}
k++;
}
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
printf("%4d ",a[i][j]);
}
printf("\n");
}
}









