您的位置:首页 > 编程语言 > C语言/C++

c语言算法小练习-19

2015-09-22 09:30 441 查看

题目及代码:

[code]#include <stdio.h>
int feibo(int n)
{
    if (n==1) {
        return 1;
    }
    if (n==2) {
        return 2;
    }
    return feibo(n-1)+feibo(n-2);
}
int main(int argc, const char * argv[]) {
   /**
   题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。(程序分析:请抓住分子与分母的变化规律。)
    **/
//分子分母都是斐波那契数列,分母是1,2开始的第20项,分子是第21项
//    先计算分母,即第20项
    float sum=0,number=0;
    for (int i=1;i<=20;i++) {
        number=(float)feibo(i+1)/feibo(i);
        sum+=number;
    }
    printf("%f\n",sum);
    return 0;
}


运行:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: