zoukankan      html  css  js  c++  java
  • 杨辉三角形的不同表示

    #include<stdio.h>
    #define Line 10
    /*
    第一种 就是 用二维数组来表示
        每行第一个元素和最后一个都是1
        从第三行开始,中间元素都是上一行同一列以及其左侧元素之和
    */
    int main(void){
        int a[Line][Line];
    
        a[0][0] = 1;
        for (int i = 1; i < Line; i++){a[i][0] = 1; a[i][i] = 1;}
        for (int i = 2; i < Line; i++){
            for (int j = 1; j < i; j++){
                a[i][j] = a[i - 1][j] + a[i - 1][j - 1];
            }
        }
    
        printf("杨辉三角形如下:
    ");
        for (int i = 0; i < Line; i++){
            for (int t = 0; t < Line * 2 - i * 2; t++) printf(" ");
            for (int j = 0; j <= i; j++){
                printf("%4d", a[i][j]);
            }
            printf("
    ");
        }
    
        return 0;
    }
    //这里的x从0开始,而y从1开始
    int f(int x, int y){//求杨辉三角中第x行第y列的值
        int t;
        
        if (y == 1 || y == x + 1) return 1;//x行的第1或最后一列,都为1
        t = f(x - 1, y - 1) + f(x - 1, y);
        
        return t;
    }
  • 相关阅读:
    std::auto_ptr
    make_pair
    _stdcall与_cdecl(了解)
    函数名与函数指针(了解)
    空指针与野指针
    std::bind(二)
    C++ map 映照容器
    sql find duplicate
    数量
    sort sign numeric
  • 原文地址:https://www.cnblogs.com/letianpaiai/p/13353970.html
Copyright © 2011-2022 走看看