5、 打印如下方阵(任选一题)。

来源:百度知道 编辑:UC知道 时间:2024/05/11 03:57:57
5、 打印如下方阵(任选一题)。 (1) 螺旋方阵: 1 2 3 4 ,12 13 14 5 ,11 16 15 6 ,10 9 8 7 (2) 蛇形方阵: 1 2 6 7 ,3 5 8 13 ,4 9 12 14 ,10 11 15 16

蛇阵

int n = 4;
int i=0 ,j=0, k;
int fz[n][n];
int fx = 0;
for(k=1; k<=n*n; k++)
{
fz[i][j] = k++;
if(fx == 0)
{
if(i == 0 || j == n-1)
{
if(j<n-1)
j++;
else
i++;
fx = 1;
}
else
{
i--;
j++;
}
}
else
{
if(j == 0 || i == n-1)
{
if(i<n-1)
i++;
else
j++;
fx = 0;
}
else
{
i++;
j--;
}
}
}
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
printf("%d", fz[i][j]);
}
printf("\n");
}