80分求助
查看原帖
80分求助
647138
SRCQFE楼主2022/3/20 01:41
#include <stdio.h>
int main() 
{
    	int x=1,y=0;
	int a[9][9] = {0};
	int b;
	int i=1,j=1;

	scanf("%d",&b);
		for (i = 1;i <= b * (b+1);i++)
		{
			while (y < b && a[x][y + 1]==0)
			{
				a[x][++y] = j++;
			}
			while (x < b && a[x + 1][y]==0)
			{
				a[++x][y] = j++;
			}
			while (y > 1 && a[x][y - 1]==0)
			{
				a[x][--y] = j++;
			}
			while (x > 1 && a[x - 1][y]==0)
			{
				a[--x][y] = j++;
			}
		}
		
	for (i = 1;i <= b;i++)
	{
		for (j = 1;j <= b;j++)
		{
			printf("%3d", a[i][j]);
		}
		printf("\n");
	}

	return 0;
}
2022/3/20 01:41
加载中...