想问个思路关于蛇形矩阵的问题
怎么输出一个n*n的矩阵式蛇形矩阵?比如输入n=4时,
怎么输出:
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16
思路是什么?求解。
[此贴子已经被作者于2016-11-8 16:09编辑过]

程序代码:#include<stdio.h>
int main()
{
int a[4][4];
int x,y,z,i,t;
for (x=y=i=0,z=1;z<=16;z++)
{
a[x][y]=z;//流水线赋值
x--;
y++;
if (x<i)
{
x=y;
y=0;
}
if (x>3)
{
x=3;
y=i+1;
i++;
}
}
for (x=0;x<4;x++)
for (y=x+1;y<4;y++)//局部矩阵转置
if ((x+y)%2!=0)
{
t=a[x][y];
a[x][y]=a[y][x];
a[y][x]=t;
}
for (x=0;x<4;x++,printf("\n"))
for (y=0;y<4;y++)
printf("%5d ",a[x][y]);
}
[此贴子已经被作者于2016-11-8 18:32编辑过]
