递归实现:
int Recursive_Fibonacci(int num)
{
if (num<3)
return 1;
else
return Recursive_Fibonacci(num - 1) + Recursive_Fibonacci(num - 2);
}
非递归实现
void Non_Recursive_Fib(int num)
{
int a1 = 1;
int a2 = 1;
int a3 = 0;
if (num < 3)
printf("%d\n", 1);
else
{
for (int i = 3; i <= num; i++)
{
a3 = a1 + a2;
a1 = a2;
a2 = a3;
}
printf("%d\n", a3);
}
}