c语言杨辉三角塔,杨辉三角(C语言)

本文介绍了杨辉三角在中国南宋数学家杨辉的著作中出现的历史,以及欧洲数学家帕斯卡后来的发现。文章还提供了C语言实现杨辉三角(帕斯卡三角形)的代码示例,展示了如何通过编程打印出指定层数的三角形,并阐述了其数列规律。
摘要由CSDN通过智能技术生成

杨辉三角

杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。在欧洲,帕斯卡(1623----1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。

如图:

db7228956b341fa40729197e98cc4729.png

它的规律是,除了每一行的第一个数和最后一个数,其余每个数等于上面两个数字值之和。

C语言实现:

#include

void yanghui(int number);

int main(void){

int number = 0;

printf("请输入要打印的层数:");

scanf("%d",&number);

yanghui(number);

}

void yanghui(int number){

int i , j , k , z;

int array[100][100] = {0};

for (i = 0; i < number; i++)//为每一行的第一个和最后一个数赋值1

{

for (j = 0; j <= i; j++)

{

array[i][0] = 1;

if (i == j)

{

array[i][j] = 1;

}

}

}

for( i = 0 ; i < number ; i ++)//控制行数

{

for( k = 0 ; k <= i ; k ++)//控制列数

{

if(k == 0)//如果是每行第一个数就打印1

{

for(z = 0 ; z < number - i ; z ++)//控制每一行前面的空格

{

printf(" ");

}

printf("%d",array[0][0]);

printf(" ");

}else if(k == i)//如果是每行的最后一个就打印1

{

printf("%d",array[0][0]);

}

if(k != 0 && k != i)//如果不是每行的第一个也不是最后一个就打印上一行两个数的和

{

array[i][k] = array[i-1][k-1] + array[i-1][k];

printf("%d",array[i][k]);

printf(" ");

}

}

printf("

");//每打印一行进行换行

}

}

输出:

b638af6d16668041e633cae7fcd4f4d0.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值