问题
问答题
下列给定程序中,函数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);。