首頁 >後端開發 >C++ >為什麼我的華氏轉攝氏度 C 程式輸出 0,如何解決?

為什麼我的華氏轉攝氏度 C 程式輸出 0,如何解決?

Barbara Streisand
Barbara Streisand原創
2024-10-28 14:41:30234瀏覽

Why does my Fahrenheit to Celsius C   program output 0 and how can I fix it?

華氏溫度到攝氏溫度的轉換:基本方程式修改

在此C 程式中,我們的目標是將華氏溫度轉換為攝氏溫度。然而,該程式碼目前產生了意外的輸出 0。讓我們調查一下這個問題背後的原因。

程式碼中有問題的行是:

fahrenheit = (5/9) * (celsius + 32);

問題是由除法運算引起的(5/9)。在 C 中,預設執行整數除法,這意味著結果被截斷為整數。這實際上使除法產生 0,即使我們希望它是浮點值。

為了修正這個問題,我們需要修改除法以使用浮點運算。我們可以透過將其中一個運算元轉換為浮點數來實現這一點,如下所示:

fahrenheit = (5.0/9) * (celsius + 32);

透過將5 轉換為浮點數(5.0),我們強制整個除法以浮點模式執行,得出正確的轉換公式。

透過此修改,程式現在可以正確計算華氏溫度到攝氏溫度的轉換,在輸入攝氏溫度時提供準確的結果。

以上是為什麼我的華氏轉攝氏度 C 程式輸出 0,如何解決?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn