斐波那契数列(Fibonacci sequence),
又称黄金分割数列、又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……
//方法一: 循环非递归
#include<stdio.h>
#include<windows.h>
#pragma warning (disable : 4996)
int fib(int n){
int a = 1;
int b = 1;
int count = 0;
if (1 == n || 2 == n)
{
return 1;
}
int i = 3;
for (i; i <= n; i++)
{
count = a + b;
a = b;
b = count;
}
return count ;
}
int main()
{
int n;
scanf("%d",&n);
int ret = fib(n);
printf("%d", ret);
system("pause");
return 0;
}
// 方法二: 递归
#include<stdio.h>
#include<windows.h>
#pragma warning (disable : 4996)
int fib(int n){
if (1 == n || 2 == n){
return 1;
}
return fib(n - 1) + fib(n - 2);
}
int main(){
int n = 0;
scanf("%d", &n);
int ret = fib(n);
printf("%d",ret);
system("pause");
return 0;
}