| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2393 人关注过本帖
标题:用c如何实现杨辉三角?
只看楼主 加入收藏
alio
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2007-1-19
收藏
 问题点数:0 回复次数:11 
用c如何实现杨辉三角?

如何用C打印出杨辉三角形(打印10行)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
。。。。。。

搜索更多相关主题的帖子: 杨辉三角 
2007-01-28 21:21
lmjv222
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-1-28
收藏
得分:0 
#include<stdio.h>
void main()
{
int n=10;
int a[50][50];
for(int i=0;i<n;i++)
{
for(int j=0;j<=i;j++)
{
if(j==0||j==i)
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
for(int k=0;k<n;k++)
{
for(int p=0;p<=k;p++)
{
printf("%d\t",a[k][p]);
}
printf("\n");
}
}
2007-01-28 23:50
jt9079
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-1-28
收藏
得分:0 

#include <stdio.h>
#define row 10
void main()
{
int i,j;
int item_arr[row][row];

for(i=0;i<row;i++)
{
item_arr[i][0]=1;
item_arr[i][i]=1;

}
for(i=1;i<row;i++)
{
for(j=1;j<i;j++)
{
item_arr[i][j] = item_arr[i-1][j-1]+item_arr[i-1][j];
}
}
for(i=0;i<row;i++)
{
for(j=0;j<=i;j++)
{
printf("%4d",item_arr[i][j]);
}
printf("\n");
}

}

2007-01-29 00:21
baiqie
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2007-1-19
收藏
得分:0 
int x,y,a[n][m]; /* a[][]随你自己输入 */
for(x=0;x<=n;x++)
a[x][0]=1;
for(y=0;y<=m;y++)
a[x][y]=1;
for(x=2;x<=n;x++)
{
for(y=2;y<=m;y++)
a[x][y]=a[x][y-1]+a[x-1][y];
}
for(x=0;x<=n;x++)
{ for(y=0;y<=m;y++)
printf("%d",a[x][y]);
}

我在前面已经说过了,第一二行和第一二列单独拿出来输入,后面的用公式来输入,你们自己着磨吧,现在上课去............
2007-01-29 13:22
daniexu
Rank: 1
等 级:新手上路
帖 子:103
专家分:0
注 册:2007-2-3
收藏
得分:0 

#define N 7
main()
{
int a[N][N],i,j;
for(i=0;i<N;i++) /*输入*/
{
a[i][0]=1;
a[N][N]=1;
}
/*********************************/
for(i=2;i<N;i++)
for(j=1;j<i;j++)
{ /*运算*/
a[i][j]=a[i][j-1]+a[i-1][j-1];
}
/*********************************/
for(i=0;i<N;i++)
{
for(j=0;j<i;j++)
printf(" %6d",a[i][j]); /*输出*/
printf("\n");
}
}



2007-02-04 12:34
flmls
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-2-6
收藏
得分:0 
以下是引用alio在2007-1-28 21:21:00的发言:

如何用C打印出杨辉三角形(打印10行)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
。。。。。。

#include <stdio.h>
main()
{
int i, j, n, m, c;
printf("i: ");
scanf("%d",i); /* i就杨辉三角形打印的行数 */
for(m=1,m<=i,i++)
{
c=1;
for(j=1, j<=40-3*m,j++) /* 每行前的空格 */
printf(" ");
printf("%d",c);

for(n=1,n<=m,n++)
{
c=c*(m-n+1)/n;
printf("%6d",c);
}
printf("\n");
}
}

2007-02-10 23:16
delpiero
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-2-8
收藏
得分:0 
5楼得输出结果貌似不对吧

2007-02-12 13:43
delpiero
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-2-8
收藏
得分:0 
我又试了一下6楼的好像也不对啊
而且 for(n=1,n<=m,n++) FOR后面的括号里应当用“;”哦

2007-02-12 13:52
lhj2005
Rank: 1
等 级:新手上路
帖 子:230
专家分:0
注 册:2007-1-23
收藏
得分:0 
以下是引用delpiero在2007-2-12 13:52:08的发言:
我又试了一下6楼的好像也不对啊
而且 for(n=1,n<=m,n++) FOR后面的括号里应当用“;”哦

#include <stdio.h>
main()
{
int i, j, n, m, c;
printf("i: ");
scanf("%d",&i); /* i就杨辉三角形打印的行数 */
for(m=0;m<=i-1;m++)
{
c=1;
for(j=1; j<=40-3*m;j++) /* 每行前的空格 */
printf(" ");
printf("%d",c);

for(n=1;n<=m;n++)
{
c=c*(m-n+1)/n;
printf("%6d",c);
}
printf("\n");
}
}

[此贴子已经被作者于2007-2-14 0:59:33编辑过]

2007-02-14 00:55
jishuai
Rank: 1
等 级:新手上路
帖 子:97
专家分:0
注 册:2006-12-15
收藏
得分:0 
我建议这个题目应该自己思考一下啊
应该是可以写出来的啊

2007-02-14 19:10
快速回复:用c如何实现杨辉三角?
数据加载中...
 
   



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

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