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;
    }



  • 相关阅读:
    Python3爬取前程无忧数据分析工作并存储到MySQL
    MySQL操作数据库和表的基本语句(DDL
    MyBatis的增删改查操作
    指定方向或者位置移动
    AI-Tank
    转载人家写的CURSOR
    Ajax学习整理笔记
    全面解析注解
    java调用存储过程mysql
    JAVA如何调用mysql写的存储过程
  • 原文地址:https://www.cnblogs.com/tigerisland/p/7564705.html
Copyright © 2011-2022 走看看