下面的程序中,函数fun的功能是:根据形参m,计算下面公式的值. T=1+1/(2*3)+1/(3*4)+.+1/(m*

问题描述:

下面的程序中,函数fun的功能是:根据形参m,计算下面公式的值. T=1+1/(2*3)+1/(3*4)+.+1/(m*(m+1)
下面的程序中,函数fun的功能是:根据形参m,计算下面公式的值.
T=1+1/(2*3)+1/(3*4)+.+1/(m*(m+1))
请改正程序中的错误,并运行改正后的程序.当从键盘输入50时,给出程序运行的正确结果(按四舍五入保留6位小数).
程序:
#include
#include
double fun(int m)
{ double t=1.0;
int i=2;
for(i=2;i
1个回答 分类:综合 2014-10-11

问题解答:

我来补答
double fun(int m)
{
    double t = 1.0;
\x09int i = 2;
\x09for (int i = 2; i <= m; i++)
\x09{
\x09    t += 1.0/(i*(i+1)); //将1改成1.0,就可以了
\x09}
\x09return t;
};
修改见上图……
输出的结果为: 
Input:50
Output:1.480392
再问: 这个我改了 但是不对啊。还有就是输出的还要改成printf("%.6lf",fun(m)); 你有TC吗?你去输出看下。
再答: 这是VS的截图,在Linux平台下也一样,都是正确的结果
 
 
展开全文阅读
剩余:2000