2005~2011年全国计算机二级C语言机试题库

下列给定程序中,函数fun的功能是:计算S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…

f(n)的值。

例如,当n为5时,函数值应为10.407143。f(x)函数定义如下:

f(x)=

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

#include <stdlib.h>

#include <conio.h>

#include <stdio.h>

#include <math.h>

/*************found**************/

f(double x)

{

if(x==0.0||x==2.0)

return 0.0;

else if(x<0.0)

return(x-1)/(x-2);

else

return(x+1)/(x-2);

}

double fun(int n)

{

int i; double s=0.0,y;

for(i=-n; i<=n;i++)

{ y=f(1.0*i); s+=y;}

/*************found**************/

return s

}

void main()

{ system("CLS");

printf("%f\n", fun(5));

}

【参考答案】

(1)错误:f(double x) 正确:double f(double x)

(2)错误:return s 正确:return s;

t=1+1/2+1/3+1/4+…+1/m

例如,若输入5,则应输出2.283333。

请改正程序中的错误,使它能计算出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

2005~2011年全国计算机二级C语言机试题库相关文档

最新文档

返回顶部