给定程序MODll.C中函数fun的功能是:应用递归算法求形参a的平方根。求平方根的迭代公式如下:例如,a为2时,平方根值为:1.414214。请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

题目

给定程序MODll.C中函数fun的功能是:应用递归算法求形参a的平方根。求平方根的迭代公式如下:

例如,a为2时,平方根值为:1.414214。

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

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


相似考题
参考答案和解析
正确答案:(1)double fun(double a double x0)(2)if(fabs(x1-x0)>0.0 O001 )
(1)double fun(double a, double x0)(2)if(fabs(x1-x0)>0.0 O001 ) 解析:(1)主函数中“fun(x,1.0)”,x是double型变量,1.0是浮点数,可知fun有两个double型参数,而第一标识下“dounle”不是C语言关键字,所以应将“double fun(doublea,dounle x0)”改为“double fun(double a,double x0)”。
(2)第二个标识下的if语句是判断进行递归运算的条件,第二标识下变量x0没有定义,根据题意,这里是判断x1和x0的差值的绝对值是否比0.00001大,所以第二个标识下“ifi[fabs(x1-xo)>0.0
更多“ 给定程序MODll.C中函数fun的功能是:应用递归算法求形参a的平方根。求平方根的迭代公式如下:例如,a为2时,平方根值为:1.414214。请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,”相关问题
  • 第1题:

    给定程序MODll.C中函数fun的功能是:求整数x的y次方的低3位值。例如,整数5的6次方为15625,此值的低3位值为625。

    请改正函数fun中指定部位的错误,使它能得出正确的结果。

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


    正确答案:(1)for(i=1; i<=y; i++) (2)t=t%1000;
    (1)for(i=1; i<=y; i++) (2)t=t%1000; 解析:本题中函数的功能是求整数x的y次方的低3位值。本题解题过程首先是求y次方,然后对结果进行截取。

  • 第2题:

    给定程序MODll.C中函数fun的功能是:根据以下公式求π值,并作为函数值返回。

    例如,给指定精度的变量eps输入0.0005时,应当输出Pi=3.141480。

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

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


    正确答案:(1)t=1; (2)return(2*s);
    (1)t=1; (2)return(2*s); 解析:该题中函数功能是根据公式计算π值。从已给定源程序的main.主函数开始入手,通过键盘输入制定精度,然后通过“printf“\neps=%lf,Pi=%lf\n\n”,x,fun(x));”语句来调用fun函数。

  • 第3题:

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

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

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

    注意:部分源程序在文件MODll.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!

    试题程序:


    正确答案:
    【参考答案】(1)for(i=2;i<=m;i++)(2)Y一=1.0/(i*i);【解题思路】(1)使用for循环计算公式,必须计算到m,所以应改为foKi=2;i<=m;i++)。(2)在除法运算中,如果除数和被除数都是整数,那么所除结果也是整数,因此应改为Y一=1.0/(i*i)。

  • 第4题:

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

    例如,若m中的值为:5,则应输出:0.536389。

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

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


    正确答案:(1)for(i=2; i=m; i++)(2)y-=1.0/(i*i);
    (1)for(i=2; i=m; i++)(2)y-=1.0/(i*i); 解析:该程序功能是根据题目要求计算公式。从已给定源程序的main主函数开始入手,“printf("\nThe result is%lfin",fun(n));”语句中的fun(n)将参数n传给函数double fun(int m)中的m,实现公式的计算结果。

  • 第5题:

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

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

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

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


    正确答案:(1)for(i=2; i=m; i++)(2)y+=1.O/(i*i);
    (1)for(i=2; i=m; i++)(2)y+=1.O/(i*i); 解析:该题中函数功能是计算公式的值。其中,公式中涉及在循环中对各项的计算及累加求和。从已给定源程序的main主函数开始入手,“printf(〝\nThe result is%1f\n〞,fun(n));”语句中调用fun函数,计算公式的值。