4-18 递归求Fabonacci数列 (10分)

来源:互联网 发布:手机维修店刷机软件 编辑:程序博客网 时间:2024/05/07 20:35

本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下:

f(n)=f(n−2)+f(n−1)f(n)=f(n-2)+f(n-1)f(n)=f(n2)+f(n1) (n≥2n\ge 2n2),其中f(0)=0f(0)=0f(0)=0f(1)=1f(1)=1f(1)=1

函数接口定义:

int f( int n );

函数f应返回第n个Fabonacci数。题目保证输入输出在长整型范围内。建议用递归实现。

裁判测试程序样例:

#include <stdio.h>int f( int n );int main(){    int n;    scanf("%d", &n);    printf("%d\n", f(n));    return 0;}/* 你的代码将被嵌在这里 */

输入样例:

6

输出样例:

8
int f( int n ){int result;if(n == 0)result = 0;else if(n == 1)result = 1;elseresult = f(n - 2) + f(n - 1);return result;}
0 0
原创粉丝点击