#include <conio.h> #include <stdio.h> double fun(int n) { int a,b,c,k; double s; s=0.0; a=2; /***************found***************/ ___1___; for (k=1;k<=n;k++) { s=s+(double)a/b; c=a; a=a+b;b=c; } /***************found***************/ ___2___; } main() { int n; /***************found***************/ printf("\n n="); scanf("%d",0); printf("\n the value of function is: %lf\n", fun(n)); }
时间: 2023-07-05 13:32:25 浏览: 130
下面是完整的代码,并且已经填好了空缺的部分:
```c
#include <conio.h>
#include <stdio.h>
double fun(int n)
{
int a,b,c,k;
double s;
s=0.0;
a=2;
b=1; // 填空1
for (k=1;k<=n;k++)
{
s=s+(double)a/b;
c=a;
a=a+b;
b=c; // 填空2
}
return s; // 修正:添加返回值
}
main()
{
int n;
printf("\n n=");
scanf("%d", &n); // 修正:添加取地址符号 &
printf("\n the value of function is: %lf\n", fun(n));
getch(); // 修正:添加等待输入
}
```
该程序的功能是计算下面这个数列的前n项和:2/1 + 3/2 + 5/3 + 8/5 + 13/8 + ...
其中,每一项的分子为前两项的和,分母为前一项的值。
阅读全文