求第n个斐波那契数
求第n个斐波那契数---循环
int main()
{
int i = 0;
int n = 0;
int ret = 1;
scanf("%d", &n);
if (n > 2)
{
int a1 = 1;
int a2 = 1;
for (i = 3; i <= n; i++)
{
ret = a1 + a2;
a2 = a1;
a1 = ret;
}
}
printf("%d\n", ret);
return 0;
}
求第n个斐波那契数---迭代
int main()
{
int n = 0;
scanf("%d", &n);
int Fib(int);
int ret = Fib(n);
printf("%d\n", ret);
return 0;
}
int Fib(int n)
{
int a = 1;
int a1 = 1;
int a2 = 1;
while (n >= 3)
{
a = a1 + a2;
a2 = a1;
a1 = a;
n--;
}
return a;
}