| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1960 人关注过本帖, 1 人收藏
标题:请帮忙解释一下杨辉三角.
只看楼主 加入收藏
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏(1)
 问题点数:0 回复次数:4 
请帮忙解释一下杨辉三角.

/*杨辉三角 */ #include <stdio.h> void main() { int a[80]={0},b[80]={0},i,j,n; do { printf("请输入一个正整数:"); scanf("%d",&n); }while(n<=0||n>16);//如果满足此条件,返回继续输入; b[1]=1; for(j=1;j<=n;j++) { for(i=1;i<=j;i++) a[i]=b[i]+b[i-1]; for(i=1;i<=j;i++) printf("%5d",b[i]=a[i]); printf("\n"); } }

杨辉三角我有点看不懂,规律也不是太明白,请解释一下.谢谢!

搜索更多相关主题的帖子: 杨辉三角 解释 
2004-06-05 22:58
jzh2004
Rank: 1
等 级:新手上路
帖 子:341
专家分:0
注 册:2004-4-30
收藏
得分: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

我的主页 http://www.
2004-06-06 00:22
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

你写的程序,我看不懂,我想用一个二维数组更容易理解。

程序如下:

#define N 10

main()

{int a[N][N],i,j;

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

{a[i][0]=1;

for(j=1;j<N;j++)

if(i==j) a[i][j]=1;

else a[i][j]=a[i-1][j-1]+a[i-1][j]; /*它的值等于左上角+正上方元素的和*/

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

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

printf("%5d",a[i][j]);

printf("\n"):

}

}

这样好像更容易理解!


2004-06-06 12:48
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏
得分:0 

综合上面的二道例子,我将程序改成下面这样的了,非常容易理解,谢谢楼上的啊. #include <stdio.h> void main() { int a[80][80],i,j,n; do { printf("请输入一个正整数:"); scanf("%d",&n); }while(n<=0||n>16); for(i=0;i<n;i++) { a[i][0]=1; //控制行数,每行第一个数字是1; for(j=1;j<n;j++) //控制列数; { if(i==j) //如果行列相等,那个座标的数就等于1; a[i][j]=1; else //否则其它座标的数就等于它上行左上方的数+上行正上方的数; a[i][j]=a[i-1][j-1]+a[i-1][j]; } } for(i=0;i<n;i++) { for(j=0;j<=i;j++) printf("%5d",a[i][j]); printf("\n"); } }


学好编程就能编出自己的未来! 加油!自信!努力!奋斗!
2004-06-08 10:28
X玻璃罅
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-12-22
收藏
得分:0 
还有一个  杨辉三角公式:
X=k(i-j)/j  这个i,j分别为行和列的坐标,k你要求的前一个数,x为你求的数
2009-12-22 09:47
快速回复:请帮忙解释一下杨辉三角.
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021923 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved