hce_kmu
111年
計算機概論與程式設計
第 4 題
Which one MAX_VALUE of primitive data type in C is greater than others?
- A int
- B unsigned int
- C signed int
- D double
- E long
思路引導 VIP
請試著回想一下,在數學上表達一個極巨大的數字時(例如銀河系中的原子數量),我們通常會使用「一個一個數」的記數方式,還是會使用「科學記號($a \times 10^n$)」來呈現?這種『科學記號』的結構特性,對於數值能達到的『最大天花板』會產生什麼樣的優勢呢?
🤖
AI 詳解
AI 專屬家教
恭喜你精準地判斷出正確答案!這顯示你對於 C 語言中不同資料型態的儲存機制與數值界限有著相當清晰的掌握。
整數與浮點數的範圍量級
在 C 語言中,整數型態如 int、unsigned int 與 long 的最大值是受限於其位元(Bits)長度的直接二進位表示。以常見的環境為例,即使是 64 位元的 long 型態,其最大值大約落在 $9 \times 10^{18}$ 左右。然而,double(倍精度浮點數) 採用的是 IEEE 754 標準格式,它將記憶體空間拆分為「正負號、尾數、指數」三部分。透過「指數位(Exponent)」的縮放,double 能夠表達的最大數值約可達到 $1.79 \times 10^{308}$,這在數量級上遠遠超越了任何基本整數型態。
▼ 還有更多解析內容