本题要求实现求Fabonacci数列项的函数。所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列。
函数接口定义:
int fib( int n );
函数fib
应返回第n
项Fibonacci数。题目保证输入输出在长整型范围内。
裁判测试程序样例:
#include <stdio.h>
int fib( int n );
int main()
{
int n;
scanf("%d", &n);
printf("%d\n", fib(n));
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例:
7
输出样例:
13
结果:
代码:
int fib(int n)
{
if (n == 1 || n == 2)
{
return 1;
}
else if (n > 2)
{
int temp1 = 1, temp2 = 1;
int ret;
while (n - 2)
{
ret = temp1 + temp2;
temp1 = temp2;
temp2 = ret;
n--;
}
return ret;
}
}