编写函数fun(),它的功能是:计算和输出下列级数的和。 S=1/(1×2)+1/(2×3)+…+1/(n×(n+1)) 例如,当n=10时,函数值为0.909091。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中

admin2010-09-14  24

问题 编写函数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("%f\n",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; }

解析 解决数学序列的问题,我们的思路依然是“数学先行”,即先看清楚题目的数学逻辑,然后再根据C语言来“翻译”出来。本题中,每一项的值都是n*(n+1)的倒数。当输入n时,从1开始循环,注意,此处for(i=1;i
转载请注明原文地址:https://kaotiyun.com/show/eXID777K
0

最新回复(0)