斐波那契数列有如下特点:
第1,2两个数为1,1。从第三数开始,该数是其前面数之和。即
F1=1;
F2=1;
F3=F1+F2;
Fn=Fn-1+Fn-2;
1,用for语句实现,
代码如下:
#include<stdio.h>int Fibon(int n){int f1=1;int f2=1;int f3;for(int i=2;i<=n;i++){f3=f1+f2;f1=f2;f2=f3;}return f3;}int main(){printf("%d\n",Fibon(2));printf("%d\n",Fibon(6));printf("%d\n",Fibon(10));return 0;}
2,用数组解决斐波那契数列问题
void Show(int *arr,int len) //len代表数组长度{for(int i=0;i<len;i++)//i为数组下标{printf("%d ",arr[i]);}printf("\n");}void Fibon(int *arr,int len){arr[0] = 1;arr[1] = 1;for(int i=2;i<len;i++){arr[i] = arr[i-1] + arr[i-2];}}int main(){int brr[] = {1,2,3,4,5,6,7,8,9,10,11,12};Fibon(brr,sizeof(brr)/sizeof(brr[0]));Show(brr,sizeof(brr)/sizeof(brr[0]));return 0;}