下列给定的程序中,函数fun的功能是:求出以下分数
下列给定的程序中,函数fun()的功能是:求出以下分数序列的前n 项和。2/1,3/2,5/3,8/5,13/8,21/13,……和值通过函数值返回 main()函数。例如,若输入n=5,则应输出8.391667。 注意:部分源程序给出如下。 请改正程序中的错误,使它能计算出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的 结构!
/**********code.c**********/
#include <stdio.h>
/**********found**********/
void fun(int n)
{
int a, b, c, k;
double s;
s = 0.0;
a = 2;
b = 1;
for(k = 1; k <= n; k++)
{
/**********found**********/
s = s + (Double)a / b;
c = a;
a = a + b;
b = c;
}
return s;
}
void main()
{
int n = 5;
printf("\nThe value of function is: %lf\n", fun(n));
}
/**********-code.c**********/答案
第1空:错误:void fun(int n)
正确:double fun(int n)
第2空:错误:s = s + (Double)a / b;
正确:s=s+(double)a/b;