请编写函数fun(),其功能是;计算井输出下列多项式值。 S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n) 例如,若主函数从键盘给n输入8后,则输出为 S-0.662872。 注意;部分源程序给出如下

admin2010-09-14  17

问题 请编写函数fun(),其功能是;计算井输出下列多项式值。
         S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n)
   例如,若主函数从键盘给n输入8后,则输出为 S-0.662872。
   注意;部分源程序给出如下。
   请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。
   试题程序;
   # include<stdio. h>
   double fun(int n)
   {
   }
   main ()
   {
     int n;
     double s;
     printf("\nInput n: ");
     scanf ("%d", &n);
     s=fun (n);
     printf ("\ns=%f\n ", s);
   }

选项

答案double fun(int n) { int i; double s=0.0; for (i=1; i<=n; i++) s=s+(1.0/(2*i-1)-1.0/(2*i)); /*计算S= (1-1/2) + (1/3-1/4) +…+ (1/(2n-1)-l/2n) */ return s; }

解析 本题中s=s+(1.0/(2*i-1)-1,O/(2*i));语句是用C程序去表达题目中的每一项,这是关键,其他问题不难理解。
转载请注明原文地址:https://jikaoti.com/ti/jIkiFFFM
0

最新回复(0)