A-A+

编写函数fun() 它的功能是:计算和输出下列级数的和。 S=1/(1×2)+1/(2×3)

2022-08-05 20:48:42 问答库 阅读 172 次

问题详情

编写函数fun(),它的功能是:计算和输出下列级数的和。
S=1/(1×2)+1/(2×3)+…+1/(n×(n+1))
例如,当n=10时,函数值为0.909091。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序;
include<conio.h>
include<stdio.h>
double fun(int n)
{
}
main ()
{
clrscr();
printf("%fn",fun(10));
}请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:double fun(int n){int i;double s=0.0;for (i=l; i<=n; i++)s=s+l.0/(i* (i+l)); /*求级数的和*/return s;}
double fun(int n){int i;double s=0.0;for (i=l; i<=n; i++)s=s+l.0/(i* (i+l)); /*求级数的和*/return s;} 解析:解决数学序列的问题,我们的思路依然是“数学先行”,即先看清楚题目的数学逻辑,然后再根据C语言来“翻译”出来。本题中,每一项的值都是n*(n+1)的倒数。当输入n时,从1开始循环,注意,此处for(i=1;i

考点:级数,函数