斐波那契数列c语言求n
时间: 2023-11-03 18:58:35 浏览: 125
斐波那契数列是由0和1开始,后面的每一项都是前面两项的和。在C语言中,我们可以使用递归或循环的方式来求解斐波那契数列的第n个数。
递归实现:
可以使用递归函数来求解斐波那契数列。我们定义一个递归函数Fibo,当n小于等于2时,直接返回1;否则,返回Fibo(n-1) + Fibo(n-2)。
代码示例:
#include <stdio.h>
int Fibo(int n) {
if (n <= 2)
return 1;
else
return Fibo(n - 1) + Fibo(n - 2);
}
int main() {
int n = 0;
scanf("%d", &n);
printf("%d\n", Fibo(n));
return 0;
}
循环实现:
我们也可以使用循环来求解斐波那契数列。我们定义三个变量f1、f2和f3,初始值分别为1、1和2。然后通过循环,迭代计算f3的值,并将f1、f2和f3更新为下一次循环的值,直到计算到第n个数,最后返回f3的值。
代码示例:
#include <stdio.h>
int Fibo(int num) {
int f1 = 1;
int f2 = 1;
int f3 = 2;
if (num <= 0) {
return 0;
} else if (num < 3 && num > 0)
return f1;
else {
for (int i = 3; i <= num; i++) {
f3 = f1 + f2;
f1 = f2;
f2 = f3;
}
}
return f3;
}
int main() {
int count;
scanf("%d", &count);
printf("%d", Fibo(count));
return 0;
}
阅读全文