fibonacci

来源:百度知道 编辑:UC知道 时间:2024/06/09 22:25:29
输入N,求不小于N的最小Fibonacci数
头两项为1,之后每项为前两项之和

#include <stdio.h>

int fibonacci(int n)
{
if(n==1 || n==2)
{
return 1;
}
else return fibonacci(n-1)+fibonacci(n-2);
}

int main()
{
int n,i;

printf("input n:");
scanf("%d",&n);
for(i=1;fibonacci(i)<n;i++)
;
printf("fibonacci(%d)=%d\n",i,fibonacci(i));
}

#include "stdio.h"
int fiba(int n){
if(n==0||n==1) return 1;
else return fiba(n-1)+fiba(n-2);
}

void main(){
int i,N;
scanf("%d",&N);
while(fiba(i)<N)) i++;
printf("%d\n",fiba(i));
}
}

楼上的 俩方法一样啊...没有更省资源的方法么?