//Fibonacci函数递归与循环实现
#include<stdio.h>
long long Fibonacci_1(unsigned int n){
if(n==0)
return 0;
if(n==1)
return 1;
else return Fibonacci_1(n-1)+Fibonacci_1(n-2);
}
long long Fibonacci(unsigned int n){
int result[2]={0,1};
if(n<2)
return result[n];
int fibonacciOne=0;
int fibonacciTwo=1;
int fibN=0;
for(int i=2;i<=n;i++){
fibN=fibonacciOne+fibonacciTwo;
fibonacciOne=fibonacciTwo;
fibonacciTwo=fibN;
}
return fibN;
}
void main(){
printf("%3d\n",Fibonacci(0));
printf("%3d\n",Fibonacci_1(0));
printf("%3d\n",Fibonacci(1));
printf("%3d\n",Fibonacci_1(1));
printf("%3d\n",Fibonacci(2));
printf("%3d\n",Fibonacci_1(2));
printf("%3d\n",Fibonacci(3));
printf("%3d\n",Fibonacci_1(3));
printf("%3d\n",Fibonacci(40));
printf("%3d\n",Fibonacci_1(40));
printf("%3d\n",Fibonacci(10));
printf("%3d\n",Fibonacci_1(10));
}
Fibonacci
最新推荐文章于 2024-01-05 10:30:21 发布