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

admin2017-02-24  20

问题 下列给定程序中,函数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;
/*********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/N0Dp777K
0

随机试题
最新回复(0)