问题 问答题

下列给定程序中,函数fun的功能是:根据整型形参m,计算如下公式的值:

例如,若m的值为5,则应输出1.463611。

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

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

试题程序:

#include<conio.h>

#include<stdio.h>

double fun(int m)

double y=1.0;

int i;

/********fOund********/

for[i=2;i<m;i++)

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

y+=1/(i*i);

return(y);

main()

int n=5;

printf("\nThe result is%lf\n",fun(n));

答案

参考答案:

for=2;i<=m;i++)

(2)y+=1.0/(i*i);或y+=(double)1/(i*i);

解析:

本题关键字有:for循环语句;数据类型的强制转换。

[微分析]

(1)根据题目给出的公式可知变量i的取值范围包括m。

(2)变量y是double型变量,而j是int型变量,要进行类型转换,所以改为y+=1.0/(i*i);或y=(double)1/(i*i);。

单项选择题
单项选择题 案例分析题