题解 | #蛇形矩阵#
蛇形矩阵
https://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e
#include <stdio.h>
int main() {
//
int n,count=1;
scanf("%d",&n);
int a[n][n],j=0;//定义矩阵大小
while(j<n)//走几次轮回,每一次只对行列之和为j斜行的数进行自增操作
{
for(int i=0;i<=j;i++)
{
a[j-i][i]=count++;//j-i+i=j,合固定为某一值时数值是自增的
}//每一斜行进行顺序操作自增
j++;
}
int m=n;
for(int i=0;i<n;i++)//输出指定位置的值,每一行少输出一个
{
for(j=0;j<m;j++)
{
printf("%d ",a[i][j]);
}
m--;//每一行少输出一个
printf("\n");
}
return 0;
}
#c#
查看17道真题和解析