ITパスポートトップに戻る
練習問題難易度: 標準2023年度

ITパスポート 過去問練習問題 第60問

問題

手続printArrayは,配列integerArrayの要素を並べ替えて出力する。手続printArrayを呼び出したときの出力はどれか。ここで,配列の要素番号は1から始まる。 〔プログラム〕 ○printArray() 整数型: n, m 整数型の配列: integerArray ← {2, 4, 1, 3} for (n を 1 から (integerArrayの要素数 − 1) まで 1 ずつ増やす) for (m を 1 から (integerArrayの要素数 − n) まで 1 ずつ増やす) if (integerArray[m] > integerArray[m + 1]) integerArray[m] と integerArray[m + 1] の値を入れ替える endif endfor endfor integerArrayの全ての要素を先頭から順にコンマ区切りで出力する

選択肢

  1. 11,2,3,4
  2. 21,3,2,4
  3. 33,1,4,2
  4. 44,3,2,1

正解

1. 1,2,3,4

詳しい解説を見る

解説

このアルゴリズムは隣接する2要素を比較し,左の値が右より大きいときに入れ替えるバブルソート(昇順)である。初期配列{2,4,1,3}に対し,外側のループnごとに内側ループで隣接比較・交換を繰り返すと,最大値が後方へ押し出されていき,最終的に昇順に整列された{1,2,3,4}が得られる。よって出力は先頭から「1,2,3,4」となり,正解はア。(出典: 令和5年度分 ITパスポート試験 問60)

記憶定着問題

全200問を繰り返し学習

練習問題の関連問題

この調子で演習を続けよう

スキマ資格ではITパスポートの全1200問を分野別・難易度別に体系的に学習できます。ITパスポートはストラテジ系・マネジメント系・テクノロジ系の3分野バランスが合格の鍵です。