C语言杨辉三角的输出
本文我们使用C语言来输出杨辉三角。我们将杨辉三角中的每个数字先存储到二维数组中,然后再使用循环输出数组中的元素。
杨辉三角的特点:
如下所示就是一个杨辉三角:
下面是输出杨辉三角的C语言代码:
声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。
杨辉三角的特点:
- 每行数字左右对称,由1开始逐渐变大,然后变小,回到1;
- 第n行的数字个数为n个;
- 第n行数字和为2n-1;
- 除首尾数字是1外,中间每个数字等于其正上方和左上方数字之和。
如下所示就是一个杨辉三角:
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
下面是输出杨辉三角的C语言代码:
#include <stdio.h> int main() { int i,j; int a[10][10]; for(i=0;i<10;i++) /*初始化第0行和对角线元素*/ { a[i][0]=1; a[i][i]=1; } for(i=2;i<10;i++) /*公式计算元素值*/ { for(j=1;j<i;j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; } for(i=0;i<10;i++) /*输出数组*/ { for(j=0;j<=i;j++) printf("%5d",a[i][j]); printf("\n"); } return 0; }运行结果:
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1根据杨辉三角的特点分析,第 0 列和对角线元素的值都是 1,在此基础上计算中间其他元素,然后存储到数组中。数组中只保存每行的有效数据。
声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。