杨辉三角不用数组实现

于是,借助百度,搜了下杨辉三角的性质,发现有一条就是

第n行的第1个数为1,第二个数为1×(n-1),第三个数为1×(n-1)×(n-2)/2,第四个数为1×(n-1)×(n-2)/2×(n-3)/3…依此类推

#include

int main(void)
{
    int n,sum;
    printf("请输入杨辉三角的层数:");
     scanf("%5d",&n);
     
    for(int i=1;i<=n;i++)
    {
        sum=1;
        for(int k=30-2*i;k>0;k--)    //输出空格
            printf(" ");

        for(int j=1;j<=i;j++)
        {
        
        if(j>1)
             sum=sum*(i-j+1)/(j-1);   //公式

             printf("%5d",sum);
        }
        
        printf("\n");
        
    }
    return 0;
}
————————————————
版权声明:本文为CSDN博主「JNSimba」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u014307117/article/details/39909387

猜你喜欢

转载自www.cnblogs.com/jeseesmith/p/12510740.html