社区
C语言
帖子详情
一个C小程序
xujiwen55
2006-04-09 01:42:17
有个题
F(0)=1
F(1)=1
F(2)=F(1)+F(0)
. .
. .
F(N)=F(N-1)+F(N-2) ; N>=2 ;
用 C 写出 F(N)
我自已写了下,你们看看能否实现:
int n
int f(n)
{
if n<2 then
return 1
else
{ f(n)
{f(n)=f(n-1)+(n-2)
}
return f(n)
}
}
...全文
105
7
打赏
收藏
一个C小程序
有个题 F(0)=1 F(1)=1 F(2)=F(1)+F(0) . . . . F(N)=F(N-1)+F(N-2) ; N>=2 ; 用 C 写出 F(N) 我自已写了下,你们看看能否实现: int n int f(n) { if n<2 then return 1 else { f(n) {f(n)=f(n-1)+(n-2) } return f(n) } }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
postren
2006-04-09
打赏
举报
回复
递归肯定是效率低的算法
int fnew(const int n)
{
int f0 = 1, f1 = 1;
int f2 = 1;
for (int i = 2; i < n + 1; ++i)
{
f2 = f0 + f1;
f0 = f1;
f1 = f2;
}
return f2;
}
yuanchuang
2006-04-09
打赏
举报
回复
if ((n == 0) && (n == 1))
改成if ((n == 0) || (n == 1))
yuanchuang
2006-04-09
打赏
举报
回复
晕,你怎么发了两贴啊?我还以为我回错贴了呢!
你应该把那一贴删掉,然后把分加到这一贴上来。
yuanchuang
2006-04-09
打赏
举报
回复
我重写了一个,用迭代法(没有测试,但应该能用):
int f(int n)
{
int a, b, c, i;
if ((n == 0) && (n == 1))
return 1;
for (b = 1, c = 1, i = 1; i < n; ++i)
{
a = b;
b = c;
c = a + b;
}
return c;
}
其实很多书上讲到这个例子的。
YF2006
2006-04-09
打赏
举报
回复
int f(int n)
{
int z;
if (n==0||n==1) z=1;
else z=f(n-1)+f(n-2);
return z;
}
main()
{
int n,y;
y=f(n);
printf("f(n)=%d\n",y);
}
postren
2006-04-09
打赏
举报
回复
int f(const int n)
{
if (n<2)
return 1;
else
return f(n-1)+f(n-2);
}
liunian812
2006-04-09
打赏
举报
回复
int n
f(0)=1;
f(1)=1;
scanf("%d",&n);
int f(n)
{
while(n>=2)
{f(n)=f(n-1)+(n-2);
}
return f(n);
}
c语言10个经典
小程序
c语言10个经典
小程序
,超级实用,适用于企业,游戏,娱乐等,请查找使用。
c语言
小程序
代码大全
c语言代码大全,一共有55个
小程序
的代码,包括求水仙花数、求和,排序,判断闰年,百鸡问题等54个
小程序
代码。
C语言贪吃蛇
小程序
代码
一个
C语言写的贪吃蛇代码 不是EXE程序 使用时需要自己生成程序运行
随机循环抽奖
小程序
_C语言控制台程序源代码
C语言实例
小程序
,入门学习。 C语言源代码,循环抽奖
小程序
,随机动态抽出结果。
打砖块c源程序 c语言小游戏程序
c语言小游戏程序 好好研究下吧 增强一下兴趣
C语言
70,040
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章