c语言fabonacci数列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言fabonacci数列相关的知识,希望对你有一定的参考价值。

#include<stdio.h>
void main()

int a[20]=1,1,i;
for(i=2;i<=19;i++);

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

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

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


输出:
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
好奇怪啊,为什么我输不出Fibonacci数列啊?
哪里错了啊?大佬们,帮帮我这个小白吧!

斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2)(n≥2,n∈n*)。
c语言递归实现如下:
#include
int f(n)

if(n else return f(n-1)+f(n-2);

int main()

printf("%d",f(5));
return 0;
运行结果:8
参考技术A #include main( ) long f1,f2,f; int i,n; scanf("%d",&n); f1=f2=1; if(n<=2) f=1; else for(i=3;i<=n;i++) f=f1+f2; f1=f2; f2=f; printf("%ld\n",f); 波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义: F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

6-3 递归求Fabonacci数列 (10 分)

6-3 递归求Fabonacci数列 (10 分)

本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下:

f(n)=f(n?2)+f(n?1) (n2),其中f(0)=0,f(1)=1。

函数接口定义:

 

int f( int n );

  

函数f应返回第n个Fabonacci数。题目保证输入输出在长整型范围内。建议用递归实现。

裁判测试程序样例:

#include <stdio.h>

int f( int n );

int main()
{
    int n;

    scanf("%d", &n);
    printf("%d
", f(n));

    return 0;
}

/* 你的代码将被嵌在这里 */

  

输入样例:

6

  

输出样例:

8

  

int f( int n )
{
    if(n == 0)
        return 0;
    else if(n == 1)
        return 1;
    else
        return f(n - 2) + f(n - 1);
}

  

以上是关于c语言fabonacci数列的主要内容,如果未能解决你的问题,请参考以下文章

[PTA]习题10-6 递归求Fabonacci数列

C语言编程,输入两个数列,求交集!

[PTA]实验10-7 递归求Fabonacci数列

C语言常用算法中,查找无序数列的算法都有哪些?

,c语言:利用数组求斐波那契数列的前20项

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