c语言,编程实现,求斐波那契数列,1,1,2,3,5,8,......的前20项及前20项和

 我来答
珈蓝惜梦qF
2019-10-09 · TA获得超过654个赞
知道答主
回答量:33
采纳率:0%
帮助的人:1.3万
展开全部

C语言源程序如下:

#include<stdio.h>

int main()

{

int array[100]={1,1};//斐波那契数列前两个元素均为0

int i=0;//循环变量

int n=20;//数列需要求的个数

int sum = 0;//和变量

for(i=2;i<n+1;i++)//按递推原理依次求出后续元素

{

array[i]=array[i-1]+array[i-2];//数列原理

}

printf("arr[1]-arr[%d] = ", n);//提示输出数列元素

for (i = 0; i < n; i++)//遍历数列

{

printf("%d ",array[i]);//输出arr[1]-arr[n]元素内容

sum += array[i];//顺便进行求和

}

printf("\n%d ", sum);//输出求和结果

return 0;

}

程序运行结果如下:


扩展资料:

利用递归原理进行求斐波那契数列的求解和求前n项和:

#include<stdio.h>

int fibonacci(int n) //递归函数


if (n == 0 || n == 1)  

return 1;    

if (n > 1)        

return fibonacci(n - 1) + fibonacci(n - 2); 


int main() 


int i = 0;    

for (i = 0; i < 30; i++) 


printf("fibonacci(%d) = %d\n", i, fibonacci(i)); 

}    

return 0; 

}

听不清啊
高粉答主

2016-04-14 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部

#include<stdio.h>

int main()

{int a[20],n,i,s=2;

 a[0]=a[1]=1;

 printf("1 1 ");

 for(i=2;i<20;i++)

 {a[i]=a[i-1]+a[i-2];

  s+=a[i];

  printf("%d ",a[i]);

 }

 printf("\nsum=%d\n",s);

 return 0;

}

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天雨下凡
2016-04-14 · 知道合伙人教育行家
天雨下凡
知道合伙人教育行家
采纳数:17564 获赞数:65156
爱电脑、爱数学、爱音乐; 熟悉VB、C/C++、JAVA; EXCEL与VBA有所研究…… 数学,一些会,一些被忘却……

向TA提问 私信TA
展开全部
#include<stdio.h>
int fib(int n);
int main(void)
{
    int sum=0;
    for(int i=1;i<=20;i++)
    {
        if(i%11==0)
            printf("\n");
        printf("%5d",fib(i));
        sum+=fib(i);
    }
    printf("\n前20项之和为:%d\n",sum);
}
int fib(int n)
{
    if(n<3)
    return 1;
    else
    return fib(n-1)+fib(n-2);
}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式