算法记录:用二维数组实现“杨辉三角”的输出

 

题目

按要求输入如下格式的杨辉三角

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

最多输出10层

实现的方法有很多,我想到的算是比较简单的一种,只需要一个数组加循环语句就行。

嗯,这是算法学习初期的水平吧~

 

#include 
int main()
{
    int n;
    scanf("%d", &n);
    //用10*10数组实现
    int tag[10][10] = {0};
    for(int i = 0; i < 10; i++){
        tag[i][0] = 1;
        tag[i][i] = 1;
    }
    for(int i = 0; i < 10; i++){
        for(int j = 0; j <= i; j++){
            if(tag[i][j] == 0){
                tag[i][j] = tag[i - 1][j] + tag[i - 1][j - 1];
            }
        }
    }
    for(int i = 0; i < n; i++){
        for(int j = 0; j <= i; j++){
            printf("%d ", tag[i][j]);
        }
        printf("\n");
    }
    return 0;

}

 

你可能感兴趣的:(Thinking,in,Algorithm,Notes,on,Algorithm,算法笔记)