c语言中 abs 和 fabs 不同吗?
floatcountValue(){doublex1,x0;intflag=1;x1=0.0;while(flag){x0=x1;x1=cos(x0);if(abs(x0...
float countValue()
{double x1,x0;
int flag=1;
x1=0.0;
while(flag)
{
x0=x1;
x1=cos(x0);
if(abs(x0-x1)<0.000001)
flag=0;
}
return x1;
}
其结果为 0.739086
float countValue()
{double x1,x0;
int flag=1;
x1=0.0;
while(flag)
{
x0=x1;
x1=cos(x0);
if(abs(x0-x1)<0.000001)
flag=0;
}
return x1;
}
其结果为0.540302 展开
{double x1,x0;
int flag=1;
x1=0.0;
while(flag)
{
x0=x1;
x1=cos(x0);
if(abs(x0-x1)<0.000001)
flag=0;
}
return x1;
}
其结果为 0.739086
float countValue()
{double x1,x0;
int flag=1;
x1=0.0;
while(flag)
{
x0=x1;
x1=cos(x0);
if(abs(x0-x1)<0.000001)
flag=0;
}
return x1;
}
其结果为0.540302 展开
展开全部
你写的不是一样的么?
abs是算整型数的绝对值,fabs是算浮点数类型的绝对值,你这里应该用fabs否则结果差的还蛮大的
abs是算整型数的绝对值,fabs是算浮点数类型的绝对值,你这里应该用fabs否则结果差的还蛮大的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用abs时,它的有效数字是7位,但计算机运算时7位以后的也用上了,这样当然会不准确.fabs是15位,这样你知道这什么不一样了吧.
C语言fabs 是求双精度浮点数的绝对值的函数。
输入参数是双精度浮点数,计算结果送返绝对值,也是双精度浮点数
C语言fabs 是求双精度浮点数的绝对值的函数。
输入参数是双精度浮点数,计算结果送返绝对值,也是双精度浮点数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询