题目描述
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
输入
本题有多组数据,每组数据由一个正整数N组成。(N不大于100)
输出
对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。
样例输入
5样例输出
1 3 6 10 15 2 5 9 14 4 8 13 7 12 11
i x
1 1 3 6 10 15 i外循环5次 2 2 5 9 14 i-循环次数j: 1-4 3 4 8 13 2-3 4 7 12 3-2 5 11 4-1
j内循环j=i;j<N;j++
3 4 5 2
4 5 3
6 4
#include<iostream>
using namespace std;
int main()
{
int N,i,j,x,y;
cin>>N;//输入行数
x=1;
for(i=1;i<=N;i++) {//外循环:循环N次,共N行
x=x+i-1;
cout<<x<<" ";//输出每行首个数字
y=x;
for(j=i;j<N;j++) {//内循环:循环输出每行余下数字
y=j+y+1;
cout<<y<<" ";
}
cout<<endl;
}
return 0;
}