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

admin2017-07-27  17

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

    例如,若m=2000,则应输出:0.000160。
    请改正程序中的语法错误,使它能计算出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
1  #include<stdio.h>
2   /**********foundv/
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/iFi0FFFM
0

最新回复(0)