函数fun的功能是:计算 直到=le-6); return f; } main() { double x,y; x=2.5; y=fun(x); printf("inThe result is:in"

admin2015-12-22  57

问题 函数fun的功能是:计算

    直到<10-6若x=2.5,函数值为:1.917915 o
    请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
    注意:源程序存放在考生文件夹下的BLANK1.C中。
    不得增行或删行,也不得更改程序的结构!.
#include  
#include  
double fun(double x)
{  double f,t,int n;
    f=1.0+x;
  /**********found**********/
    t=___1___;
    n=1;
    do  {
    n++;
/**********found**********/
    t*=(-1.0)*x/___2___;
    f+=t;
    }
  /**********found**********/
    while(___3___>=le-6);
    return f;
  }
  main()
  {  double x,y;
    x=2.5;
    y=fun(x);
    printf("inThe result is:in");
    print.f("x=%-12.6f y=%-12.6fin",
x,y);
}

选项

答案(1)x (2)n (3)fabs(t)

解析 函数fun的功能是计算级数和。
    第一空:“f=1.0+x;”f的初始化为级数的前两项之和,do while循环从第三项x2/2开始计算,第一空处是给t赋初值,t表示级数项,“n++;t*=(-1.0)*x/__2__;”即第一次进入do循环之后n的值为2,故t的初值应该为x,第一空处应为“x”。
    第二空:由审题分析可知,后一项乘以(-1)*x除以n,故第二空处应为“n”。
    第三空:循环的终止条件是(xn/n!)的绝对值小于le-6,即只要(xn/n!)大于等于le-6,do循环就执行,故第三处应为“fabs(t)”,fabs函数的功能是求绝对值。
转载请注明原文地址:https://kaotiyun.com/show/fWDp777K
0

最新回复(0)