递归
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int fib(int n)
{
if (n <= 2)
return 1;
else
return fib(n - 1) + fib(n - 2);
}
int main()
{
int num = 0;
printf("请输入第几个斐波那契数:\n");
scanf("%d", &num);
printf("%d\n", fib(num));
return 0;
}
循环
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int n = 0;
scanf("%d", &n);
int fib( n);
{
int f1 = 1;
int f2 = 1;
int f3 = 0;
for (int i = 3; i <= n; i++)
{
f3 = f1 + f2;
f1 = f2;
f2 = f3;
}
printf("%d\n", f3);
}
return 0;
}
以上两个代码运行良好
加油铁汁!