计算双倍的百分比

时间:2011-05-11 12:20:35

标签: c# double

我很难计算双值的百分比。我写了下面的代码,但它总是显示“0”。可能是什么问题?

        double percent = 80; //Percent
        double toCalc = 1/1000000; //1 uAmper

        MessageBox.Show((toCalc * (percent / 100F)).ToString());

感谢。

2 个答案:

答案 0 :(得分:2)

1/1000000需要作为浮点除法执行。我会这样写:

1.0/1000000.0

您编写它的方式,除法将作为整数除法执行,然后提升为浮点值。整数除法结果为0,这解释了您所看到的内容。

答案 1 :(得分:1)

这一行错了:

double toCalc = 1/1000000; //1 uAmper

因为您要为toCalc分配0。这就是为什么它总是显示零。

您应该将其更改为

double toCalc = 1/1000000d;

那是因为它首先计算1/1000000,对于整数类型,计算结果为0.然后,它被转换为double,但它仍为0.