基本情報トップに戻る
B難易度: 標準2026年度

基本情報技術者 予想問題B 第67問

問題

次のプログラムで、二次元配列arr[3][3]の対角成分(arr[0][0]+arr[1][1]+arr[2][2])の合計を求める処理の空欄[ ]に入るものはどれか。 整数型: sum ← 0 整数型: i for (i を 0 から 2 まで 1 ずつ増やす) sum ← sum + [ ] endfor

選択肢

  1. 1ア arr[0][i]
  2. 2イ arr[i][0]
  3. 3ウ arr[i][i]
  4. 4エ arr[i][2]

正解

3. ウ arr[i][i]

詳しい解説を見る

解説

正解はウ。対角成分とは、二次元配列で行番号と列番号が一致する位置の要素、すなわちarr[0][0]、arr[1][1]、arr[2][2]を指す。ループ変数iが0→1→2と変化するとき、行・列の両方の添字にiを使うarr[i][i]を指定すれば、ちょうど対角線上の3要素を順に加算できる。アのarr[0][i]は0行目の3要素(横一行)、イのarr[i][0]は0列目の3要素(縦一列)、エのarr[i][2]は2列目の3要素を合計してしまうため誤りである。二次元配列では「1つ目の添字が行、2つ目の添字が列」という対応を固定して考えるのが基本であり、対角成分は添字が等しい、逆対角成分は添字の和がn−1になる、といったパターンは科目Bで頻出である。

一問一答

科目A 180問+科目B 60問

Bの関連問題

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

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。