永发信息网

c语言 迭代法求 x1=(x+a/x)/2

答案:1  悬赏:0  手机版
解决时间 2021-08-01 00:18
  • 提问者网友:聂風
  • 2021-07-31 19:37

#include"stdio.h"
#include"math.h"
void main()
{
float a,s=1,s1=1;
scanf("%f",&a);
for(;fabs(s1-s)>=1e-5;)
{s1=s;
s=(s1+a/s1)/2.0; }

printf("%f\n",s);

getch();
}结果不对

最佳答案
  • 五星知识达人网友:渡鹤影
  • 2021-07-31 21:14

s=1,s1=1;这一步有错 在for循环中fabs(s1-s)>=1e-5一开始就不成立 循环根本就没执行


所以把s1=1改为大于1的数就可以了

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯