题目描述
蛇形矩阵是由 1 开始的自然数依次排列成的一个矩阵上三角形
输入
正整数 N表示层数,N 不大于 100
输出
输出一个 N 行的蛇形矩阵,矩阵三角中同一行的数字用一个空格分开,行尾不要多余的空格。
样例输入
5
样例输出
1 3 6 10 15 2 5 9 14 4 8 13 7 1211
#include <iostream> using namespace std; int main() { int N; while (cin>>N&&N>=1&&N<=100) { int a[N][N],i,j; a[0][0]=1; for (i=0; i<N; ++i) { a[i+1][0]=a[i][0]+i+1; } for (j=1; j<N; ++j) { for (i=0; i<N-j; ++i) { a[i][j]=a[i+1][j-1]+1; } } for (i=0; i<N; ++i) { for (j=0; j<N-i; ++j) { if (j<N-i-1) cout<<a[i][j]<<" "; else cout<<a[i][j]; } cout<<endl; } } return 0; }