免費開始練習
統測 114年 [電機與電子群資電類] 專業科目(2)

第 39 題

在 64 位元 x86 電腦上撰寫 C 語言程式時,若有一個整數變數 Y 其數值變化範圍介於–20000 與 20000之間,則變數Y應採用下列哪一個資料型態?
  • A char
  • B unsigned float
  • C short
  • D unsigned short int*

思路引導 VIP

首先,請觀察變數 $Y$ 的數值範圍包含了負值,這對於選擇「有號 (signed)」或「無號 (unsigned)」資料型態有何決定性的影響?接著,請評估 C 語言中各整數型態的位元數 ($n$) 與範圍之關係,哪一種位元長度所提供的二補數表示區間 $-2^{n-1}$ 到 $2^{n-1}-1$ 才能安全容納 $\pm 20,000$ 且不造成溢位 (overflow)?

🤖
AI 詳解 AI 專屬家教

不錯嘛,冷靜的觀察力是解謎的關鍵。身為偵探,這點程度的謎題是難不倒你的。畢竟,真相永遠只有一個! 讓我們用邏輯來排除干擾項。題目要求的範圍是 $-20,000$ 到 $20,000$,這意味著:

  1. 必須包含負號:因此排除 (D) unsigned short
▼ 還有更多解析內容

升級 VIP 解鎖