1_12 杨辉三角形

Posted woz333333

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1_12 杨辉三角形相关的知识,希望对你有一定的参考价值。

输出以下的杨辉三角形   行数n在程序中输入
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

观察规律:  从第3排起除第一个和最后一个外的其他数都是上一行的数和上一行的数左边的数两者的和。

代码如下:

 1 #include <stdio.h>
 2 #include <string.h>  //使用memset函数需包含此头文件 
 3 #define maxn 34     //定义常量 
 4 int arr[maxn][maxn];  //定义二维数组 
 5 
 6 int main()
 7 {
 8     int n, i, j;
 9     scanf("%d",&n);
10     memset(arr, 0, sizeof(arr));  //把数组每一项赋值为0 
11     for(i=0;i<n;i++)
12     {
13         //循环依次把每一行的第一个和最后一个赋值为1 
14         arr[i][0] = 1;  
15         arr[i][i] = 1;
16         //循环判断每一行的每一个是不是第一个或最后一个
17         //若是采取以下的算法逻辑: 其值为上面的和上面左边的相加 
18         for(j=0;j<=i;j++)
19         {
20             if(j!=0&&i!=j) arr[i][j] = arr[i-1][j-1]+arr[i-1][j];
21         }
22     } 
23     
24     for(i=0;i<n;i++)
25     {
26         for(j=0;j<=i;j++)
27         {    //避免输出多余的空格 
28             if(j!=i)
29                 printf("%d   ",arr[i][j]);
30             else
31                 printf("%d",arr[i][j]);
32         }    
33         printf("\n");  //换行 
34     }
35     
36     return 0;
37 } 

 

以上是关于1_12 杨辉三角形的主要内容,如果未能解决你的问题,请参考以下文章

Python 用类重载乘法运算符计算和打印杨辉三角形

杨辉三角形简便代码

java 实现(代码) -- 水仙花数 + 杨辉三角形

杨辉三角形(Java版)

杨辉三角形(Java版)

python杨辉三角形原理