标题:这个程序错在哪里?
只看楼主
summerpopoha
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2006-2-23
 问题点数:0 回复次数:1 
这个程序错在哪里?

#include "math.h"
main()
{
float x1=1.0,x2,a;
printf("please input a ");
scanf("%f",&a);

do
{x2=0.5*(x1+(a/x1));
x1=x2;
}while(fabs(x2-x1)>=1e-5);
printf("aqrt(a)= %10.4f",x2);
}

输出结果不正确

搜索更多相关主题的帖子: include please 
2006-02-24 18:43
summerpopoha
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2006-2-23
得分:0 

#include "math.h"
main()
{
float x1,x2,a;
printf("please input a ");
scanf("%f",&a);
x1=1.0;
do
{
x1=x2;
x2=0.5*(x1+(a/x1));

}while(fabs(x2-x1)>=1e-5);
printf("aqrt(a)= %10.4f",x2);
}

把迭代的顺序弄错了,使得x1=x2, fabs(x1-x2)=0了,只执行一次就结束了
真是晕了!!


2006-02-24 19:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-47034-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.091287 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved