蛇形矩阵的输出:由数字递增的顺序来思考,模拟它的情况,随后输出;
for( int i=1;i<=100;i++ )
{
int t=i;
for( int j=1;j<=i;j++ )
{
num[t][j]=sum++;(模拟了数字的情况)
t--;
}
}
题目描述
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
输入
本题有多组数据,每组数据由一个正整数N组成。(N不大于100)
输出
对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。
样例输入
5
样例输出
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
#include<stdio.h>
#include<string.h>
int main()
{
int num[124][124];
int n,sum=1;
int i, j, t;
for( int i=1;i<=100;i++ )
{
int t=i;
for( int j=1;j<=i;j++ )
{
num[t][j]=sum++;
t--;
}
}
while( ~scanf( "%d" , &n ) )
{
for( i = 1; i <= n; i++ )
{
int t=n-i+1;
for( j = 1;j<=t; j++ )
printf( j==t?"%d\n":"%d ", num[i][j] );
}
}
return 0;
}
#include<string.h>
int main()
{
int num[124][124];
int n,sum=1;
int i, j, t;
for( int i=1;i<=100;i++ )
{
int t=i;
for( int j=1;j<=i;j++ )
{
num[t][j]=sum++;
t--;
}
}
while( ~scanf( "%d" , &n ) )
{
for( i = 1; i <= n; i++ )
{
int t=n-i+1;
for( j = 1;j<=t; j++ )
printf( j==t?"%d\n":"%d ", num[i][j] );
}
}
return 0;
}