二维数组---杨辉三角

来源:互联网 发布:淘宝类目没有颜色分类 编辑:程序博客网 时间:2024/05/29 16:49

题目描述
杨辉三角
Description
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
上面的图形熟悉吗?它就是我们中学时候学过的杨辉三角。


输入
一个正整数n(1≤n≤30),表示将要输出的杨辉三角的层数。

输出
输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开。

样例输入
4
样例输出
1
1 1
1 2 1
1 3 3 1

 


#include <stdio.h> 
int pascal[30+1][30+1]; 
// 使用二维数组的杨辉三角程序 
void pascalgo(int n) 

    int i, j; 
    for(i=0; i<n; i++) 
        for(j=0; j<=i; j++) 
            if(j == 0 || j == i) 
                pascal[i][j] = 1; 
            else 
                pascal[i][j] = pascal[i-1][j] +pascal[i-1][j-1]; 

void pascalprint(int n) 

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

int main(void) 

    int n; 
    pascalgo(30); 
    while(scanf("%d", &n) != EOF) { 
       pascalprint(n); 
       printf("\n");
    } 
    return 0; 

 

0 0
原创粉丝点击