7-8 实验2_3_表达式求值一 (100 分)浮点数判断大小

有表达式如下:

a / ( b * c - d )

请按要求计算 。

输入格式:

只有一行,为4个用空格分隔的浮点数,依次代表a,b,c,d(请用double 类型存储)。

输出格式:

如果除数为0,则输出error,否则输出该表达式的值(保留1位小数)。

样例">样例">输入样例:

66.09 7.7 3.5 1.6

输出样例:

2.6

代码如下:

#include <stdio.h>
int main()
{
    double a,b,c,d;
    scanf("%lf %lf %lf %lf",&a,&b,&c,&d);
    float e;
    e = a/(b*c-d);
    if(fabs((b*c-d)-0)< 1.0E-10)//判断浮点数是否相等
        printf("error");
    else
        printf("%.1f",e);//打印保留一位小数
    return 0;
}

1.其中fabs为函数

fabs函数的作用为:fabs函数是一个求绝对值的函数,求出x的绝对值,和数学上的概念相同, 当x不为负时返回 x,否则返回 -x。

 

2. 1.0E-10代表10的负10次方该种表示方法叫指数计数法(e计算法)

 3.对浮点数的大小判断:浮点数与整型数字不同,有double类型和float类型不同的类型的精度不同,不能直接用if(a==b)进行判断!

 

 如图中即使输入相同但是却不相等!

浮点数的判断为:如果两个浮点数相减所得比一个非常小的数小,你们近似的认为两个浮点数相等!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值