0

重複の可能性:
除算はゼロを返します

以下のコードがあるとします。

double d=16/60; //I got d is 0.0 , but I expected d could be 0.27. 

それを作る方法?ありがとう。

ベストアンサーのために編集:)

double d=16/60f;
d= Math.Round(d, 2); //result being 0.27
4

2 に答える 2

7

これは整数除算によるものです。

オペランドの少なくとも1つは、浮動小数点型(floatまたはdouble)である必要があります。

double d=16/60f;

double d=16f/60;

double d=16/60d;

double d=16d/60;

double d=16.0/60;

double d=16/60.0;
于 2012-12-11T11:06:42.840 に答える
1

キャストを作る

double d = (double)16 / (double)60

または:

double d = Convert.ToDecimal(16)/Convert.ToDecimal(60)
于 2012-12-11T11:08:15.423 に答える