📦 変数・型・演算子
int a = 7, b = 2; double r = a / b; の結果が 3.5 ではなく 3.0 になります。平均点や割合が、いつも小数点以下ゼロになります。
int どうしの / は整数除算で、小数部は捨てられます。代入先が double でも、割り算が終わったあとに変換されるので手遅れです。
割り算の前に片方を実数にします: double r = (double)a / b;。整数のまま割合を出したいときは a * 100 / b のように先に掛けてから割ります(掛け算のオーバーフローには注意)。
もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。