给定程序MODI1.C中函数fun的功能是:根据整型形参m,计算如下公式的值。 例如,若m=2000,则应输出:0.000160。 请改正程序中的语法错误,使它能计算出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

admin2017-11-27  30

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

例如,若m=2000,则应输出:0.000160。
请改正程序中的语法错误,使它能计算出正确的结果。
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
/************found************/
fun (int m)
{ double y = 0, d ;
int i ;
/************ found************/
for(i = 100, i <= m, i += 100)
{ d= (double)i * (double)i ;
y += 1.0 / d ;
}
return(y);
}
main ()
{ int n = 2000 ;
printf("\nThe result is %lf\n",
fun (n)) ;
}

选项

答案(1)double fun(int m) (2)for(i=100; i<=m; i+=100)

解析 函数为累计相加,计算公式的值。
    (1)第一个标识下的fun函数的定义,根据题干中给出的公式中的分数部分,可知应该具有double类型返回值。所以应将“fun(int m)”改为“double fun(int m)”。
    (2)第二个标识下的for循环过程是实现对公式的求解,C语句中for循环中的多个循环条件表达式是以分号为分隔符,所以第二个标识下“  for(i=100,i<=m,i+=100)  ”  改  为  “  for(i=100;i<=m;i+=100)”。
转载请注明原文地址:https://kaotiyun.com/show/t9xp777K
0

最新回复(0)