問題
選択肢
- 1"FF"
- 2"FE"
- 3"EF"
- 4"F0"
正解
1. "FF"
詳しい解説を見る解説を閉じる
解説
このプログラムは10進数nを16で割った余りを文字に変換し、文字列hexの前に継ぎ足していく16進変換である。n=255をトレースすると、1回目は255 mod 16=15で、15は10以上なので文字(15+55)=文字コード70の「F」をhexの前に連結し、n=255÷16=15(整数除算)。2回目は15 mod 16=15で再び「F」を前に連結し、n=15÷16=0でループ終了。よってhex="FF"となり、「"FF"」が正解である。255=15×16+15=FF(16)からも確認できる。イ・ウ・「"F0"」は余りの計算誤りや、新しい桁を後ろに連結すると誤読した場合の値である。頻出ポイント:基数変換は「割った余りが下位桁から順に求まるため逆順に並べる」のが原則で、本問は文字列の前への連結で逆順を実現している。
一問一答
科目A 180問+科目B 60問