下列给定程序中,函数fun的功能是:计算如下公式前n项的和,并作为函数值返回。 例如,当形参n的值为10时,函数返回值为9.612558。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给

admin2017-09-23  23

问题 下列给定程序中,函数fun的功能是:计算如下公式前n项的和,并作为函数值返回。

    例如,当形参n的值为10时,函数返回值为9.612558。
    请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
    注意:部分源程序给出如下。
    不得增行或删行,也不得更改程序的结构!
    试题程序:
#include < stdio.h >
double fun(int n)
{  int i;double s,t;
/*********found*********/
  s= 【1】
/*********found*********/
  for(i=1 ; i < = 【2】;i++)
  {t=2.0* i;
【1】
    S=s+(2.0*i一1)*(2.0*i+1)/ 【3】
    }
    retuen  s;
}
void main()
{  int r1=一1;
    while(n < 0)
    {printf("Please input:(n >0):");
    scanf("%d",&n);}
  printf("\nThe result is:%
f\n",fun(n));
}

选项

答案(1)0.0 (2)n (3)(t*t)

解析 本题考查:变量初始化操作,需注意该变量是用做累加器还是累乘器;for循环语句。
填空1:程序开始定义了变量s,但没有对其进行初始化,根据公式及后面的程序可知变量s用来存放公式的前n项和,因此该变量应初始化为0.0。
填空2:通过for循环语句将表达式各项进行累加,结果存于变量s中,循环变量i的取值范围为1—n。
填空3:根据题目要求确定表达式通项。前面已定义t =2.0*i,因此此空应填(t*t)。
程序要求计算表达式的值时,一般都设定一个变量s并赋初值。如果s用来存放表达式的和,则赋初值为0;如果s用来存放表达式的积,则赋初值为1。
转载请注明原文地址:https://kaotiyun.com/show/Yzxp777K
0

最新回复(0)