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

admin2018-09-27  64

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

    例如,若m=2000,则应输出:0.000160。
    请改正程序中的语法错误,使它能计算出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
1  #include<stdio.h>
2  /**********found**********/
3  fun(int m)
4  {double y=0,d;
5  int i;
6  /**********found**********/
7  for(i=100,i<=m,i+=100)
8  {d=(double)i*(double)i;
9  y+=1.0/d;
10  }
11  return(y);
12 }
13  main()
14  {  int n=2000;
15  printf(’’\nThe result is% 1f\n’’,fun(n));
16  }

选项

答案(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://jikaoti.com/ti/4ta0FFFM
0

最新回复(0)