【问题标题】:C# Double precision not showing [duplicate]C#双精度不显示[重复]
【发布时间】:2018-06-21 07:29:01
【问题描述】:
int a=870,b0=-20, b1=120, a0=0, a1=3584;            
double d=(b0 + (b1 - b0) * ((a - a0) / (a1 - a0)));
Console.Write(d);

它给出的结果为-20。我希望它精确到小数点后几位。

c#有什么问题??

【问题讨论】:

  • 在您的第一行中将int 设为double

标签: c# double


【解决方案1】:

您正在使用int。如果您想要双精度,请在进行除法之前将它们转换为double,或者只是首先将它们定义为双精度。它按照您编写的方式进行整数除法。

【讨论】:

    【解决方案2】:

    您正在整数之间进行运算,因此结果是整数。试试:

    double a=870,b0=-20, b1=120, a0=0, a1=3584;            
    double d=(b0 + (b1 - b0) * ((a - a0) / (a1 - a0)));
    Console.Write(d);
    

    【讨论】:

      猜你喜欢
      • 2012-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-20
      • 1970-01-01
      相关资源
      最近更新 更多