zoukankan      html  css  js  c++  java
  • HDU2032 杨辉三角

    问题链接HDU2032 杨辉三角。这是一个入门训练题,用C语言编写程序。

    问题简述参见上述链接。

    问题分析这里给出两个版本的程序,分别用一维数组和二维数组来存储杨辉三角。使用二维数组存储杨辉三角,可以实现一次计算多次使用。使用一维数组存储杨辉三角,需要更高的技巧。编程时候,需要注意空格输出的条件。

    程序说明(略)。

    有关杨辉三角程序,参见:I00001杨辉三角

    AC的C语言程序如下(使用二维数组的版本):

    /* HDU2032 杨辉三角 */
    
    #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++) {
                if(j != 0)
                    printf(" ");
                printf("%d", pascal[i][j]);
            }
            printf("
    ");
        }
    }
    
    int main(void)
    {
        int n;
    
        pascalgo(30);
    
        while(scanf("%d", &n) != EOF) {
           pascalprint(n);
           printf("
    ");
        }
    
        return 0;
    }

    AC的C语言程序如下(使用一维数组的版本):

    /* HDU2032 杨辉三角 */
    
    #include <stdio.h>
    
    int pascal[30+1];
    
    // 使用一维数组的杨辉三角程序
    void pascalgo(int n)
    {
        int i, j;
    
        for(i=0; i<n; i++) {
            for(j=i; j>=0; j--) {
                if(j == i || j == 0)
                    pascal[j] = 1;
                else
                    pascal[j] += pascal[j-1];
                if(j != i)
                    printf(" ");
                printf("%d", pascal[j]);
            }
            printf("
    ");
        }
    }
    
    int main(void)
    {
        int n;
    
        while(scanf("%d", &n) != EOF) {
           pascalgo(n);
           printf("
    ");
        }
    
        return 0;
    }



  • 相关阅读:
    HDu 2830 Matrix Swapping II(dp)
    服务器http处理流程
    iOS网络缓存机制
    软件设计需要的两项能力:理解与抽象
    编程思想的本质
    编程思想:面向对象与面向过程
    You Can Customize Synthesized Instance Variable Names @property
    nil / Nil / NULL / NSNull VS objc_msgSend
    对OC中property的一点理解
    @property 的本质是什么?
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7564704.html
Copyright © 2011-2022 走看看