何故が浮動小数点で出ない

[戻る]
K.O. 2002/09/23(月) 13:16:51
int    A;
int    B;
float  C;

C = A/B;
としても、
A = 2,B = 5
の場合、
C = 0.4
にならないで、
C = 0.0000

C =(A*1000)/B;
C = C/1000;
で初めて、
C = 0.4
になるが。

どうしてでしょうか?

アイススケーター 2002/09/23(月) 14:30:29
↓のようにキャストすればいいですよ。

a = (float)b/(float)c;

これは、最初に右辺を計算して、その結果を左辺に入れます。
このときにintからfloatに変換するためキャストがなければ
当然0となります。

古いスレッドには追加発言できません。