農會 資訊管理類程式設計108 年第 19 題單選題
關於C 語言格式化輸出函數printf()的參數敘述,下列何者錯誤?
A%E 用來輸出科學記號數字
B%c 用來輸出字串正確答案
C%o 用來輸出八進位數字
D%u 用來輸出整數,包含負數正確答案
E%% 用來輸出%
B、D正確答案
C語言printf格式符號中,%c輸出單一字元,%u輸出無號整數不含負數,故B、D敘述錯誤。
為什麼答案是 B、D
%c 用於輸出「單一字元」(character),若要輸出「字串」應使用 %s (string),故此敘述錯誤。
考點:科學記號考點:字元與字串考點:八進位輸出考點:無號整數
載入中…
完整詳解
Pro · 無限重點 C語言printf格式符號中,%c輸出單一字元,%u輸出無號整數不含負數,故B、D敘述錯誤。
看到%c想字元(Character),%s才是字串;看到%u想無號(Unsigned),不含負數。秒殺B、D!
逐選項分析
A科學記號✕
%E 或 %e 確實用於輸出科學記號表示的浮點數,此選項敘述正確。
B字元與字串✓ 正確
%c 用於輸出「單一字元」(character),若要輸出「字串」應使用 %s (string),故此敘述錯誤。
C八進位輸出✕
%o 用於輸出無號八進位整數 (octal),此選項敘述正確。
D無號整數✓ 正確
%u 用於輸出「無號十進位整數」(unsigned),不包含負數;若要輸出含負數的整數應使用 %d 或 %i,故此敘述錯誤。
E百分號輸出✕
%% 用於在輸出結果中印出百分號 % 本身,此選項敘述正確。
printf 常用格式控制符號對照表
| 格式符號 | 輸出型別 | 說明/範例 |
|---|
| %d / %i | 有號十進位整數 | 可包含正負號,如 -10, 25 |
| %u | 無號十進位整數 | 僅正數與0,如 42 |
| %c | 單一字元 | 如 'A', '9' |
| %s | 字串 | 如 "Hello" |
| %f / %e / %E | 浮點數/科學記號 | 如 3.14, 1.2E+3 |
| %o / %x / %X | 八進位/十六進位 | 如 077, 0xFF |
| %% | 百分號 | 印出 % 本身 |
出題者常將「字元(%c)」與「字串(%s)」混淆,或將「無號整數(%u)」誤植為包含負數。務必認清英文縮寫(c=character, u=unsigned)!