1. 程式人生 > >藍橋杯BASIC-6 楊輝三角形

藍橋杯BASIC-6 楊輝三角形

問題描述

楊輝三角形又稱Pascal三角形,它的第i+1行是(a+b)i的展開式的係數。
它的一個重要性質是:三角形中的每個數字等於它兩肩上的數字相加。

下面給出了楊輝三角形的前4行:

              1 
            1 1 
          1 2 1 
        1 3 3 1

給出n,輸出它的前n行。
輸入格式

輸入包含一個數n。
輸出格式
輸出楊輝三角形的前n行。每一行從這一行的第一個數開始依次輸出,中間使用一個空格分隔。請不要在前面輸出多餘的空格。
樣例輸入
4
樣例輸出
1
1 1
1 2 1
1 3 3 1
資料規模與約定
1 <= n <= 34。

在這裡插入圖片描述

可以推出:a[i][j]=a[i-1][j]+a[i-1][j-1]

程式碼

#include  <stdio.h> 
int main(void) 
{ 
    int i, j, n =0 , a[34][34] = {0}; //初始化 
    scanf("%d", &n);
     
    for(i=0; i<34; i++) 
        a[i][0] = 1;       
    for(i=1; i<34; i++) 
        for(j=1; j<=i; j++) 
            a[i][j] = a[i-1][j-1] + a[i-1][j];
    for(i=0; i<n; i++)   
    { 
        for(j=0; j<=i; j++) 
            printf("%d ", a[i][j]); 
            printf("\n"); 
    } 
    return 0;
} 

執行結果

在這裡插入圖片描述