打印杨辉三角

来源:互联网 发布:aws ubuntu 搭建vpn 编辑:程序博客网 时间:2024/05/16 10:00

*打印杨辉三角*

                   1

                  1 1

                 1 2 1

                1 3 3 1

               1 4 6 4 1

                ......            特点是每个数等于肩上两个数的和

#include<stdio.h>int main(){    int i = 0,j = 0,k = 0;    int num = 0;    int n = 0;    scanf("%d",&n);    for(i = 0;i < n;i++)    {        for(j = 0;j < n-i-1;j++)        {            printf(" ");        }        num = 1;        printf("1 ");        for(k = 1;k <= i;k++)        {            num = (num*(i-k+1))/k;            printf("%d ",num);        }        printf("\n");    }    return 0;}

其实每一行的数字和行号之间是有关系的,第i行的第n个数字的公式为:

1*(i/1)*((i-1)/2)*((i-2)/3)*((i-3)/4)*......*((i-n-1)/(n-1))

本文出自 “敲完代码好睡觉zzz” 博客,请务必保留此出处http://2627lounuo.blog.51cto.com/10696599/1698235

原创粉丝点击