首页 > 编程知识 正文

c语言abs是啥,c语言abs的运用

时间:2023-05-05 00:08:42 阅读:284725 作者:1728

c语言中 abs 和 fabs 不同吗?

來源:互聯網  2009-05-16 09:41:07  評論

分類: 電腦/網絡 >> 程序設計 >> 其他編程語言

問題描述:

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.739086float 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会发现,只进行的两次计算,第一次x1=cos(0)=1,第二次x1=cos(1)=0.540302。这时x1-x0的值小于一,作为abs的参数,被强制转化为整数0,于是退出了。

可见第一个用的是fabs迭代到比较精确的值,第二个用的是abs。

[b]分类:[/b] 电脑/网络 >> 程序设计 >> 其他编程语言[br][b]问题描述:[/b][br]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.739086float 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[br][b]参考答案:[/b][br]用abs会发现,只进行的两次计算,第一次x1=cos(0)=1,第二次x1=cos(1)=0.540302。这时x1-x0的值小于一,作为abs的参数,被强制转化为整数0,于是退出了。

可见第一个用的是fabs迭代到比较精确的值,第二个用的是abs。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。