C# 双精度不显示
结果是-20。我要精确到小数点后几位C# 双精度不显示,c#,double,C#,Double,结果是-20。我要精确到小数点后几位 c有什么问题?您在整数之间进行运算,因此结果是整数。尝试: int a=870,b0=-20, b1=120, a0=0, a1=3584; double d=(b0 + (b1 - b0) * ((a - a0) / (a1 - a0))); Console.Write(d); 您使用的是int。如果您想要双精度,请在进行除法之前将其转换为double,或者首先简单地将其定义为double。它按照您编写的方式进行整数除法。将第一行
c有什么问题?您在整数之间进行运算,因此结果是整数。尝试:
int a=870,b0=-20, b1=120, a0=0, a1=3584;
double d=(b0 + (b1 - b0) * ((a - a0) / (a1 - a0)));
Console.Write(d);
您使用的是int。如果您想要双精度,请在进行除法之前将其转换为double,或者首先简单地将其定义为double。它按照您编写的方式进行整数除法。将第一行的int设为双精度
double a=870,b0=-20, b1=120, a0=0, a1=3584;
double d=(b0 + (b1 - b0) * ((a - a0) / (a1 - a0)));
Console.Write(d);