请编写函数fun,其功能是:计算并输出下列多项式的值: 例如,在主函数中从键盘给n输入8后,输出为:s=0.662872。 注意:要求n的值大于1但不大于100。 部分源程序在文件PROGl.C中。 请勿改动主函数main

admin2013-06-12  30

问题 请编写函数fun,其功能是:计算并输出下列多项式的值:

    例如,在主函数中从键盘给n输入8后,输出为:s=0.662872。
    注意:要求n的值大于1但不大于100。
    部分源程序在文件PROGl.C中。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
double fun(int n)
{
}
NONO()
(/*请在此函数内打开文件,输入测试数据,
调用fun函数,输出数据,关闭文件。  */
  FILE*rf,*wf;int n,i;double s;
  rf=fopen(”in.dat”,”r”);
  wf=fopen(”out.ctat”,”w”);
  for(i=0 ; i<10;i++){
    fscanf(rf,”%d”,&n);
    S=fun(n);
    fprintf(wf,”%lf\n”,s);
  }
  fclose(rf);fclose(wf);
}
main()
{  int nj double s;
printf("\nInput n:");scanf(”%d”,
&n);
  s=fun(n);
  printf(”\ns=%f\n”,s);
  NONO();
}

选项

答案{ int i; double sum=0.0; if (n>1&&n<=100){ for(i=1; i<=n; i++) sum+=1.0/(2*i-1)-1.0/(2*i); } return sum; }

解析 (1)根据题干中给出的数列,推出每一项是(1.0/(2*i- 1)-1.0/(2*i))。
(2)在循环中求得每一项,然后对其进行累加求和。
转载请注明原文地址:https://jikaoti.com/ti/oVn0FFFM
0

最新回复(0)