c语言中double类型值的大小比较
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中double类型值的大小比较相关的知识,希望对你有一定的参考价值。
参考技术A由于double浮点数的精度问题,所以在比较大小的时候,不能像int整数型那样,直接if(a==b),if(a<b),if(a>b)。
要使用一个精度EPS:
const double EPS = 1e-6; //一般这样子就够,但有时具体题目要考虑是否要更小的 ;
if(fabs(a-b) < EPS) //判断是否相等 ;
if(a > b+EPS) // 判断a是否大于b,因为大的肯定大,所以即使你小的加上,还是会更大 。
扩展资料
JAVA double类型比较大小
@org.junit.Test
public void Test()
BigDecimal big = new BigDecimal(1);
BigDecimal Graphicprice = new BigDecimal(0.01);//图文价格
BigDecimal Speechprice = new BigDecimal(0.02);//语音价格
BigDecimal Videoprice = new BigDecimal(1);//视频价格
System.out.println(Graphicprice + " " + Speechprice +" " + Videoprice);
if(Graphicprice.compareTo(big)<0 || Graphicprice.compareTo(big)==0 ||
Speechprice.compareTo(big)<0 || Speechprice.compareTo(big)==0 ||
Videoprice.compareTo(big)<0 || Videoprice.compareTo(big)==0)
System.out.println("ok");
C#比较大小
四个文本框,前三个可输入double类型数据,在第四个文本框中显示最大的数字和最小数字的差的,有个按钮控制.
三个文本框算一组,每个里面输入个double型数据,求出最大值和最小值的差,有三组,意思就是9个文本框,总共要输入9个数据,
每组最大值减最小值的差之和除以3,就要这个数字,找个文本框显示,不会再变了
private void button1_Click(object sender, EventArgs e)//点击按钮事件
double[] num=new double[3];
double a = Convert.ToDouble(textBox1.Text);
num[0]=a;
double b = Convert.ToDouble(textBox2.Text);
num[1]=b;
double c = Convert.ToDouble(textBox3.Text);
num[2]=c;
double max=num[0],min=num[0];
for(int i=0;i<3;i++)
if(num[i]>max)
max=num[i];
if(num[i]<min)
min=num[i];
double sum=max-min;
textBox4.Text = sum.ToString();
本回答被提问者采纳 参考技术B 楼上的方法是对的,但是多定义了变量,浪费内存中的指针地址。。
以上是关于c语言中double类型值的大小比较的主要内容,如果未能解决你的问题,请参考以下文章