下列给定程序中函数fun的功能是:用递归算法计算斐波拉契数列中第n项的值。从第1项起,斐波拉契数列为: 1,1,2,3,5,8,13,21,… 例如,若给n输入7,则该项的斐波拉契数值为13。 清改正程序中的错误,使它能得出正确结果。

admin2015-11-24  16

问题 下列给定程序中函数fun的功能是:用递归算法计算斐波拉契数列中第n项的值。从第1项起,斐波拉契数列为:
1,1,2,3,5,8,13,21,…
    例如,若给n输入7,则该项的斐波拉契数值为13。
    清改正程序中的错误,使它能得出正确结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
    试题程序:
#include<stdio.h>
long fun(int g)
{
/**********found***********/
    switch(g),
    {
    case 0:return 0;
/**********found***********/
    case 1;case 2:return 1;
    }
    return(fun(g一1)+fun(g一2));
}
voidmain()
{
    long fib;int n;
    printf(“Input n:”);
    scanf(“%d”,&n),
    printf(“n=%d\n”,n),
    fib=fun(n),
    printf(“fib=%d\n、n”,fib),
}

选项

答案(1)去掉分号 (2)case 1:case 2:return 1;

解析  C语言中,switch语句之后不能有分号,并且case语句常量后应用的是冒号。
转载请注明原文地址:https://jikaoti.com/ti/7WkiFFFM
0

相关试题推荐
最新回复(0)