蛇行矩阵(C++实训题)

写在前面:仅为个人代码/总结,未必标准,仅供参考!如有错误,还望指出交流,共同进步!

蛇行矩阵

【问题描述】蛇形矩阵是由 1 开始的自然数依次排列成的一个矩阵上三角形

【输入形式】 正整数 N表示层数,N 不大于 100

【输出形式】输出一个 N 行的蛇形矩阵,矩阵三角中同一行的数字用一个空格分开,行尾不要多余的空格。

【样例输入】
5

【样例输出】
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11

【示例代码】

#include <iostream>
using namespace std;
int main()
{
    
    
    int n;
    cin>>n;
    int n1=n,m=0,m1=1;
    for(int i=1;i<=n;i++)
    {
    
    
        m=m1;
        int t=i;
        for(int j=1;j<=n1;j++)
        {
    
    
            cout<<m;
            if(j!=n1) {
    
    cout<<' ';}
            t++;m=m+t;//每一行数字的递增规律
        }
        n1--;
        cout<<endl;
        m1+=i;//每一列首个数字的递增规律
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_45909595/article/details/107877718