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

admin2015-07-30  24

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

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

选项

答案【1】0 【2】n 【3】(t*t)

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

最新回复(0)