整数変数を変更せずに、C で整数の除算から浮動小数点の結果を取得するにはどうすればよいでしょうか?

DDD
リリース: 2024-11-19 18:47:02
オリジナル
892 人が閲覧しました

How do we obtain a floating-point result from integer division in C   without altering the integer variables?

整数除算の浮動小数点精度

C では、整数除算は多くの場合、結果を最も近い整数に切り捨てます。ただし、一部の演算では小数点以下の精度が必要です。整数変数を変更せずに浮動小数点の結果を取得するにはどうすればよいでしょうか?

次の C コードを考えてみましょう:

int a = 10, b = 3;
float ans = (a / b);
ログイン後にコピー

浮動小数点形式を設定しているにもかかわらず、a / b 式は、結果は 3.

解決策は、オペランドを型キャストすることにあります。 floats:

float ans = (float)a / (float)b;
ログイン後にコピー

次の出力が示すように、除算の前に整数を float に変換すると、結果は浮動小数点の精度を維持します。

3.333
ログイン後にコピー

以上が整数変数を変更せずに、C で整数の除算から浮動小数点の結果を取得するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート