用二维数组打印杨辉三角(c/c++)

编程打印如下形式的杨辉三角

                                1//第0行

                             1 2 1

                           1 3 3 1

                          1 4 6 4 1

用二维数组实现打印杨辉三角,用a[i][j]表示第i行j列的数值

#include<iostream>
using namespace std;
#include<stdio.h>
void yanghui(int n)
{
    int i,j;
    int a[n+1][n+2];
    a[0][0]=1;
    a[1][0]=a[1][2]=1;
    a[1][1]=2;
    for(i=2;i<=n;i++)
    {
        a[i][0]=a[i][i+1]=1;
        for(j=1;j<i+1;j++)
            a[i][j]=a[i-1][j-1]+a[i-1][j];
    }
    //输出
    for(i=1;i<=n+1;i++)
        printf(" ");
    printf("%d\n",a[0][0]);
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=n-i;j++)
            printf(" ");
        for(j=0;j<=i+1;j++)
            printf("%d ",a[i][j]);
            printf("\n");
    }

}
int main()
{
    int n;
    cout<<"n=";
    cin>>n;
    yanghui(n);
    return 0;
}
    原文作者:杨辉三角问题
    原文地址: https://blog.csdn.net/j2013210855/article/details/40949859
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞