给定程序MODll.C中fun函数的功能是:根据形参m,计算如下公式的值。 t=1+1/2+1/3+1/4+…+1/m 例如,若输入5,则应输出2.283333。 请改正程序中的错误或在下划线处填上适当的内容并把下划线删除,使它能计

admin2013-04-02  38

问题 给定程序MODll.C中fun函数的功能是:根据形参m,计算如下公式的值。
    t=1+1/2+1/3+1/4+…+1/m
    例如,若输入5,则应输出2.283333。
    请改正程序中的错误或在下划线处填上适当的内容并把下划线删除,使它能计算出正确的结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
double fun(int m)
{
  double t = 1.0;
  int i;
  for(i = 2; i <= m; i++)
/**********found**********/
    t+=1.0/k;
/**********found**********/
  return t
}
main()
{
  int m;
  printf("\nPlease enter 1 integer number:");
  scanf("%d", &m);
  printf("\nThe result is %lf\n", fun(m));
}

选项

答案t+=1.0/i; return t;

解析 (1)第一个标识下,在以i为循环参数的for循环中进行公式累加,每一项为1.0/i,所以“t+=1.0/k;”改为“t+=1.0/i;”。
(2)第二个标识下,首先根据题干,将“填空”删除,函数定义为“double fun(int n)”,它有double型的返回值,所以这里返回累加公式的计算结果,即“return t;”。
转载请注明原文地址:https://kaotiyun.com/show/5JJp777K
0

最新回复(0)