Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

杨辉三角c++

作者:刀魂使者   发布日期:2026-06-23   浏览:120

#include <iostream>
#include <vector>

using namespace std;

vector<vector<int>> generatePascalsTriangle(int numRows) {
    vector<vector<int>> triangle;

    if (numRows == 0) {
        return triangle;
    }

    // 第一行总是 [1]
    triangle.push_back({1});

    for (int i = 1; i < numRows; ++i) {
        vector<int> row;
        row.push_back(1); // 每行的第一个元素总是 1

        for (int j = 1; j < i; ++j) {
            // 中间元素是上一行相邻两个元素的和
            row.push_back(triangle[i - 1][j - 1] + triangle[i - 1][j]);
        }

        row.push_back(1); // 每行的最后一个元素总是 1

        triangle.push_back(row);
    }

    return triangle;
}

void printPascalsTriangle(const vector<vector<int>>& triangle) {
    for (const auto& row : triangle) {
        for (int num : row) {
            cout << num << " ";
        }
        cout << endl;
    }
}

int main() {
    int numRows;
    cout << "请输入杨辉三角的行数: ";
    cin >> numRows;

    vector<vector<int>> pascalsTriangle = generatePascalsTriangle(numRows);
    printPascalsTriangle(pascalsTriangle);

    return 0;
}

解释说明:

  1. generatePascalsTriangle 函数:

    • 该函数用于生成指定行数的杨辉三角。
    • 如果 numRows 为 0,则返回一个空的二维向量。
    • 第一行总是 [1],因此直接将其添加到结果中。
    • 对于每一行(从第二行开始),第一个和最后一个元素都是 1,中间的元素是上一行相邻两个元素的和。
  2. printPascalsTriangle 函数:

    • 该函数用于打印生成的杨辉三角。
    • 遍历每一行,并将每个元素输出到控制台。
  3. main 函数:

    • 用户输入杨辉三角的行数。
    • 调用 generatePascalsTriangle 生成杨辉三角,并调用 printPascalsTriangle 打印结果。

这个程序可以生成并打印指定行数的杨辉三角。

上一篇:c++ for_each

下一篇:c++ string拼接

大家都在看

c++闭包

c++向上取整的代码

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++怎么输入字符串

c++字符串切片

c++ functional

c++框架代码

c++格式化字符串

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站