社区
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)
}
}
...全文
102
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语言水平,尽管来试试! 当然我还要向各位大哥大姐们请教,学习!
完整版C语言程序设计TXT电子书
2.4 怎样表示
一个
算法 24 2.4.1 用自然语言表示算法 24 2.4.2 用流程图表示算法 24 2.4.3 三种基本结构和改进的流程图 28 2.4.4 用N-S流程图表示算法 29 2.4.5 用伪代码表示算法 30 2.4.6 用计算机语言...
年会抽奖
小程序
用C语言写的
一个
抽奖
小程序
,这是源代码,用相对应的编译环境编译。
62套C语言小游戏源码
在IT领域,编程是创造和实现计算机程序的艺术。...对于想要提升编程技能,尤其是C语言编程技能的开发者来说,这是
一个
不可多得的学习资源。无论是初学者还是有一定经验的程序员,都可以从中受益匪浅。
C语言
70,036
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章