蓝桥杯 基础练习(杨辉三角形))

蓝桥杯 基础练习(杨辉三角形))_第1张图片
蓝桥杯 基础练习(杨辉三角形))_第2张图片

坑点
如果实现从第3行起,中间的数为上面两个数的和
这里可以直接a[34][34],而不是代n进去(a[n][n]在数字较大时会报错,为什么?

# include

int main()
{
    int n, i, j;
    /*i是行,j是列*/

    scanf("%d", &n);
    int a[34][34];

    if(n==1){
        printf("1");
    }
    if(n==2){
        printf("1\n");
        printf("1 1");
    }

    if(n>=3)
    {
        for(i=0; i<n; i++){
            a[i][i] = a[i][0] = 1;
        for(j=1; j<=i; j++){
            a[i+1][j] = a[i][j] + a[i][j-1];
        }
        }

        for(i=0; i<n; i ++){
            for(j=0; j<=i; j++){
                printf("%d ",a[i][j]);
            }
            printf("\n");
        }

    }


    return 0;
}

你可能感兴趣的:(蓝桥杯,ACM)