-
如果將 r 定義為 int,請輸入 10000,這將在相乘時自動強制型別轉換。
如果將 r 定義為 double,則 10000 的有效位精度不夠高。
您可以嘗試不更改 r 的型別,然後直接指定 r=,而不是鍵入 r。
-
計算機中絕大多數的小數都是不精確的,因為計算機中所有的數字都是用二進位的補碼表示的,例如,在計算機中會自動轉換為二進位,至於確切的位數與定義的型別有關,如果是浮點數,輸出將精確到小數點後7位。
-
究其原因,旺凡2000名學生已經回答了這個問題。
雙精度精度是 8 位,記住是的。
-
r 的值太大,導致 s 超出範圍,請嘗試使用較小的數字。
-
在經典的雙精度問題中,雙精度儲存的資料與您看到的不一樣。 它是沒有錯誤的。 嘗試將 r 定義為整數
-
注意不同精度的運算的最終結果跟著高精度走,所以結果是這樣的,詳見《各種型別的數值資料之間的混合動作》一書一節。
-
資料型別準確性差異和型別強制的問題。 樓上的兩人說得很好,應該表揚。
-
3 全部 (1) 在思維方面,沒有問題。
2)從邏輯上講,pi 通常取為小數點,如果定義乙個 int 型別,那麼它就非常不精確。
3)在最終輸出語句中,前雙引號有4個格式化程式,後面只有3個變數,不一致。
修改建議: 1)將變數 pi 和 radius r 定義為浮點型(浮點型,即可以是十進位數),計算面積的函式的返回值也定義為浮點型。
2)那麼浮點型對應的格式化程式是%f,在scanf和printf中已經修改過了。
3) 在最終輸出語句中,完成以下變數,如下所示:
printf("area = %.2f * 2f * 2f = %.2f ",pi,r,r,area);
%.2f 表示輸出數,小數點後 2 位。
如果有幫助,請點選領養,謝謝!
查爾斯·達爾文(Charles Darwin,1809-1882),英國生物學家,演化論的奠基人,乘坐小獵犬號船進行了為期五年的環球航行,對植物、動物和地質結構進行了廣泛的觀察和收集,並於1859年出版了劃時代的著作《物種起源》,完成了生物學的一場革命 >>>More