| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 649 人关注过本帖
标题:求助 这个斐波拉契数列是怎么计算的;
只看楼主 加入收藏
aczhao
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2012-4-8
结帖率:80%
收藏
已结贴  问题点数:10 回复次数:7 
求助 这个斐波拉契数列是怎么计算的;
/*
用数组计算斐波拉契数列的前20个数。
*/

# include <stdio.h>

int main(void)
{
    int i, fib[20];
    fib[0]=fib[1]=1;
    for (i = 2; i < 20; i++)
            fib[i] = fib[i-1] + fib[i-2]; // 这里到底是怎么算的啊,算了好久也没弄明白
    for (i = 0; i < 20; i++)
        printf("%6d", fib[i]);
    if ((i+1)%5 == 0)
        printf("\n");


    return 0;
}


程序运行正常没问题
for (i = 2; i < 20; i++)
            fib[i] = fib[i-1] + fib[i-2]; // 这里到底是怎么算的啊,算了好久也没弄明白,估计是我太笨了,呵呵 有明白的请详细帮讲讲 最好把步骤给写上。  刚学真弄不明白。 先谢谢了
搜索更多相关主题的帖子: include return 
2013-11-20 20:02
mmrx
Rank: 2
等 级:论坛游民
帖 子:42
专家分:71
注 册:2012-10-18
收藏
得分:3 
......编号0到19,fib[2] = fib[1]+fib[0]这样fib[2]就算出来了等于2,然后i++后i的值为3,算fib[3] = fib[2] + fib[1]  依次计算。
说白了就是从第三个数字开始,每个数字等于这个数字前两个数字之和。
2013-11-20 20:47
aczhao
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2012-4-8
收藏
得分:0 
回复 2楼 mmrx
那这 fib[i-1] + fib[i-2];  什么意思啊 在告诉下
2013-11-20 20:53
aczhao
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2012-4-8
收藏
得分:0 
也谢谢您了。呵呵 论坛都是好人啊 。
2013-11-20 21:17
小少陈
Rank: 2
等 级:论坛游民
帖 子:4
专家分:12
注 册:2013-6-21
收藏
得分:3 
类似于f(0)=1,f(1)=1时,由f(n)=f(n-1)+f(n-2)可得
f(2)=f(1)+f(0)=2
f(3)=f(2)+f(1)=3
f(4)=f(3)+f(2)=5
  .   .    .
  .   .    .
f(n)=f(n-1)+f(n-2)
以此类推
2013-11-20 22:03
木拉提江
Rank: 1
等 级:新手上路
帖 子:1
专家分:3
注 册:2013-11-20
收藏
得分:3 
#include <stdio.h>
int main()
{
    int f1,f2,f3,i;
    f1=1;
    f2=1;
    printf("%d\n%d\n",f1,f2);
    for(i=3;i<=20;i++)
        {
        f3=f1+f2;
        printf("%d\n",f3);
        f1=f2;
        f2=f3;
        }
        return 0;
}
上面是我写的代码,看一下是不是能帮到你
2013-11-20 22:41
domoke
Rank: 2
等 级:论坛游民
帖 子:36
专家分:71
注 册:2013-9-11
收藏
得分:3 
斐波拉契数列 是指 第三个数为前两个数只和,
程序中把 第一个和第二个数是写出来了的
 就是fib[0]和fib[1]
 所以应该是从fib[2]开始计算的  
也就是从i=2开始  
因为fib[2]=fib[0]+fib[1]
    fib[3]=fib[1]+fib[2]
所以也就不难解释 fib[i]=fib[i-2]+fib[i+1]
你把i替换成你所求数的下标就明白了
2013-11-20 22:55
aczhao
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2012-4-8
收藏
得分:0 
这回彻底明白了 谢谢各位教我。
2013-11-20 23:33
快速回复:求助 这个斐波拉契数列是怎么计算的;
数据加载中...
 
   



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

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