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数列啊?
哪里错了啊?大佬们,帮帮我这个小白吧!
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) (n≥2),其中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数列的主要内容,如果未能解决你的问题,请参考以下文章