問題
次のプログラムにおいて、手続 proc2 を呼び出すと、どの順に出力されるか。正しい答えを解答群の中から選べ。

選択肢
- 1“A”,“B”,“B”,“C”
- 2“A”,“C”
- 3“A”,“C”,“B”,“C”
- 4“B”,“A”,“B”,“C”
- 5“B”,“C”,“B”,“A”
- 6“C”,“B”
- 7“C”,“B”,“A”
- 8“C”,“B”,“A”,“C”
正解
8. “C”,“B”,“A”,“C”
詳しい解説を見る解説を閉じる
解説
呼び出した手続が別の手続を呼ぶときは、呼ばれた側の処理を最後まで実行してから呼び出し元に戻ります。proc2 は順に「proc3 を呼ぶ → “B” を出力 → proc1 を呼ぶ」を行います。まず proc3 が “C” を出力します。次に proc2 自身が “B” を出力します。続いて proc1 を呼ぶと、proc1 は “A” を出力した後に proc3 を呼び、proc3 が “C” を出力します。したがって出力順は “C”,“B”,“A”,“C” となり、正解はクです。(出典: 令和5年度 基本情報技術者試験 科目B 問2)
一問一答
科目A 180問+科目B 60問