解题思路:
1、每个数等于它上方两数之和。
2、每行数字左右对称,由1开始逐渐变大。
3、第n行的数字有n项。
4、第n行的m个数可表示为 C(n-1,m-1),即为从n-1个不同元素中取m-1个元素的组合数。
5、第n行的第m个数和第n-m+1个数相等 ,为组合数性质之一。
6、每个数字等于上一行的左右两个数字之和。可用此性质写出整个杨辉三角。即第n+1行的第i个数等于第n行的第i-1个数和第i个数之和,这也是组合数的性质之一。即 C(n+1,i)=C(n,i)+C(n,i-1)。
7、(a+b)n的展开式中的各项系数依次对应杨辉三角的第(n+1)行中的每一项。
8、将第2n+1行第1个数,跟第2n+2行第3个数、第2n+3行第5个数……连成一线,这些数的和是第4n+1个斐波那契数;将第2n行第2个数(n>1),跟第2n-1行第4个数、第2n-2行第6个数……这些数之和是第4n-2个斐波那契数。
9、将第n行的各数值,分别乘以10的列数m-1次方,然后把这些数值相加的和等于11的n-1次方。
注意事项:
参考代码:
#include<stdio.h> int c(int x, int y) { int z; if (y == 1 || y == x)return 1; z = c(x - 1, y - 1) + c(x - 1, y); //C(n+1,i)=C(n,i)+C(n,i-1) return z; } int main() { int n; scanf("%d", &n);//输入行数 n += 1; for (int i = 1; i <=n; i++) { for (int i1 = i; i1 < n; i1++) //数字前面的空格,倒三角 printf(" "); for (int j = 1; j <= i; j++) printf("%3d ", c(i, j)); //输出数字时保留间隙 printf("\n"); } return 0; }
0.0分
7 人评分
汽水瓶 (C语言代码)浏览:764 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:909 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:588 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:467 |
WU-蓝桥杯算法提高VIP-勾股数 (C++代码)浏览:1685 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)from DQM浏览:773 |
1157题解浏览:769 |
回文数字 (C语言代码)浏览:2539 |
妹子杀手的故事 (C语言代码)浏览:1153 |
C二级辅导-统计字符 (C语言代码)浏览:695 |