杨辉三角形问题

问题:打印出杨辉三角形的前n行(n<20)。

回答:

#include <stdio.h>
int main() {
    int n;
    scanf("%d",&n);
    int arr[25][25];
    int i,j;
    //计算每一行的值
    arr[1][1] = 1;
    for( i=2; i<=20; i++){
        arr[i][1] = arr[i][i] = 1;
        for( j=2; j<i; j++){
            arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
        }
    }

    for( i=1; i<=n; i++){
        //打印开头的空格
        for( j=1; j<=n-i; j++) printf(" ");
        for( j=1; j<=i; j++){
            printf("%d ",arr[i][j]);
        }
        puts("");
    }
    return 0;
}

posted @ 2015-05-24 08:46  chaoer  阅读(219)  评论(0编辑  收藏  举报