FUNDAMENTAL INFORMATION TECHNOLOGY ENGINEER
基本情報技術者の問題解説
問題
次のプログラムで,show3を呼び出したときの出力順序はどれか。
○show1() "L" を出力する ○show2() show1() "M" を出力する ○show3() "N" を出力する show2() show3()を呼び出す。
- ア N,M,L
- イ L,M,N
- ウ N,L,M
- エ L,N,M
出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目B範囲
正解と解説
正解:N,L,M
正解:N,L,M
見る場所:最初に実行されるのはshow3である。show3の中で先にNを出力し,その後show2へ移る。show2ではshow1を先に呼んでからMを出す。
| 位置 | 処理 | 出力 |
|---|---|---|
| show3 1行目 | Nを出力 | N |
| show3 2行目 | show2()を呼ぶ | |
| show2 1行目 | show1()を呼ぶ | L |
| show2 2行目 | Mを出力 | M |
処理の追い方:show3でNを出したあと,show2へ入り,さらにshow1でLを出す。show1が終わるとshow2に戻り,最後にMを出す。
間違えやすい点:show2の中ではMより先にshow1()があるため,MよりLが先に出る。呼出しが入れ子になる問題では,現在どの手続の何行目に戻るかをメモするとよい。
選択肢の見分け方:N,M,Lはshow2内の順序を逆にした誤り,L,M,Nはshow3を最後に読んだ誤り。
この問題について
公開問題・サンプル問題の形式、擬似言語記法、アルゴリズム読解・トレース・空欄補充・セキュリティ事例判断の傾向を参考にした独自問題です。本文・数値・選択肢は新規作成しています。
公式試験問題、公開問題、市販教材、外部問題サイトの問題文を転載・改題したものではありません。