下列给定程序中,函数fun的功能是:根据整形参m的值,计算如下公式的值。 例如,若m中的值为5,则应输出0.536389。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更

admin2021-02-25  24

问题 下列给定程序中,函数fun的功能是:根据整形参m的值,计算如下公式的值。

例如,若m中的值为5,则应输出0.536389。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
double fun(int m)
{double y=1.0;
    int i;
/*********found*********/
  for(i=2;i<m;i++)
/*********found*********/
    y-=1/(i*i);
  return(y);
}
main()
{int n=5;
  printf("\nThe result is%lf\n",
fun(n));
}

选项

答案(1)for(i=2;i<=m;i++) (2)y-=1.0/(i*i);

解析 (1)使用for循环计算公式,必须计算到m,所以应改为for(i=2;i<=m;i++)。
(2)在除法运算中,如果除数和被除数都是整数,那么所除结果也是整数,因此应改为y-=1.0/(i*i)。
转载请注明原文地址:https://kaotiyun.com/show/xBtp777K
0

随机试题
最新回复(0)