| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3970 人关注过本帖, 1 人收藏
标题:求教杨辉三角程序
只看楼主 加入收藏
blackstine
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-4-10
收藏(1)
 问题点数:0 回复次数:31 
求教杨辉三角程序
偶想用递归 写一个完整的杨辉三角程序》
要求 :使用递归,最后输出的行数用户可以输入

1
1 1
1 2 1
1 3 3 1
............
请帮帮忙!!!!
搜索更多相关主题的帖子: 杨辉三角程序 递归 输出 用户 
2006-06-07 13:11
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 

/*杨辉三角形一例*/
#include<stdio.h>
main()
{ int a[13]={1,0},i,n;
for(n=0; n<=12; n++)
{
printf("%*c",38-3*n,' ');
for(i=n; i>=0; i--)
{ a[i]+=a[i-1];
printf("%-6d",a[i]);
}
printf("\n");
}
}

//自评:虽然能输出杨辉三角形,
//但不符合楼主“递归”之要求

[此贴子已经被作者于2006-6-7 16:27:25编辑过]


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-07 13:21
blackstine
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-4-10
收藏
得分:0 
这个程序不能得到正确结果

##今日不签名·#¥!!!
2006-06-07 16:54
blackstine
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-4-10
收藏
得分:0 
偶自己写了一个,但是也不能运行得到正确的结果,请帮偶纠正

#include"stdio.h"
void fun(int a)
{
int i,j,n,u[100][100]={0};

for(i=0;i<a;i++)
{
u[i][0]=1;
u[i][i]=1;
}
for(i=1;i<a;i++)
{ for(n=0;n<a-i;n++)
printf(" ");
for(j=0;j<=i;j++)
{
u[i+1][j+1]=u[i][j]+u[i][j+i];
if(j==0)
printf("%d ",u[i][0]);
printf("%d ",u[i+1][j+1]);
}
printf("\n");
}
return;
}

main()
{
int i,a;
printf("\n------------------Yang Hui San Jiao-------------------\n");
printf("\nInput the line number: ");
scanf("%d",&a);
fun(a);
getch();
}


##今日不签名·#¥!!!
2006-06-07 16:55
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
/*LouZhu不妨一试这个*/
#include<stdio.h>
main()
{ int a[13]={1,0},i,n;
for(n=0; n<=12; n++)
{
printf("%*c",38-3*n,' ');
for(i=n; i>=0; i--)
{ a[i]+=a[i-1];
printf("%-6d",a[i]);
}
printf("\n");
}
scanf("%*c");
}

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-07 17:02
龙轩v亚风
Rank: 1
等 级:新手上路
威 望:1
帖 子:1073
专家分:0
注 册:2006-4-20
收藏
得分:0 

我做过这个 看看这个行不 呵呵 菜蛋之作

#include <stdio.h>

void yhsj(int n)
{
int i,j;
int a[20][20];

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

}

void main()
{
int a;

scanf("%d",&a);

yhsj(a);

printf("\n");
}


狂风扫落叶,扫把都失业!拍卖QQ:559372
2006-06-07 18:22
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
回复:(龙轩v亚风)我做过这个 看看这个行不 呵呵 ...
刚刚在VC上试过,您的完全正确.
唯一的遗憾是直角三角形的,
而楼主巴望等腰三角形的.
希楼主在你基础上再努力!

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-07 18:26
龙轩v亚风
Rank: 1
等 级:新手上路
威 望:1
帖 子:1073
专家分:0
注 册:2006-4-20
收藏
得分:0 
以下是引用–★–在2006-6-7 17:02:00的发言:
/*LouZhu不妨一试这个*/
#include<stdio.h>
main()
{ int a[13]={1,0},i,n;
for(n=0; n<=12; n++)
{
printf("%*c",38-3*n,' ');
for(i=n; i>=0; i--)
{ a[i]+=a[i-1];
printf("%-6d",a[i]);
}
printf("\n");
}
scanf("%*c");
}

你写的真好 最好是吧 那红的放在上面

但 我菜蛋有点不太理解 能稍微解释下么?

谢谢喽


狂风扫落叶,扫把都失业!拍卖QQ:559372
2006-06-07 18:49
shuaiye
Rank: 1
等 级:新手上路
帖 子:445
专家分:0
注 册:2006-5-15
收藏
得分:0 
#include <stdio.h>
#include <conio.h>
#define ARRY 13
void sp(int i);
int main(void)
{
int a[ARRY][ARRY],i,j;
for(i=0;i<=ARRY-1;i++)
for(j=0;j<=ARRY-1;j++)
{
a[i][j]=0;
if(j==0 || i==j)
a[i][j]=1;
else
{
if(i>0 && j>0)
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
for(i=0;i<=ARRY-1;i++)
{
sp(i);
for(j=0;j<=i;j++) printf("%4d",a[i][j]);
printf("\n");
}
return 0;
}
void sp(int i)
{
for(int s=1;s<ARRY-i;s++)
printf(" ");
}

由于工作,N久都没来了!
2006-06-07 21:35
blackstine
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-4-10
收藏
得分:0 

谢谢了,终于运行得到正确结果了


##今日不签名·#¥!!!
2006-06-07 23:56
快速回复:求教杨辉三角程序
数据加载中...
 
   



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

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