CO-K39|情報Ⅰ 対策問題
表を縦横に拡張したように、配列の要素をさらに配列にして「行と列」でデータを管理する構造を何というか。
解答・解説を見る
正解: 1
正答
1
この問題のポイント
二次元配列(行×列のデータ構造) を問う問題です。添字2つで要素を指定する形に慣れましょう。
解説
二次元配列は、配列の要素がさらに配列になっていて、行と列の2つの添字で要素を指定するデータ構造です。Data[2][3]のように書けば「2行目の3列目」(添字が0始まりなら3行目の4列目)というように、表のマス目を番号で指せます。
一次元配列が1列のロッカーだとすれば、二次元配列は縦横に並んだ座席表です。使いどころは、成績表(生徒×科目)、座席表(行×列)、画像(縦×横に並んだ画素)、ゲームの盤面など、「表の形をしたデータ」全般です。
処理は二重ループとセットが基本形です。外側のループで行を進め、内側のループで列を進めれば、全マスを1つずつ処理できます。「Data[i][j]のiが行、jが列」のように、どちらの添字が行でどちらが列かを問題文で確認するのが読み違い防止のコツです。
共通テストでは、表形式データの集計(行ごとの合計、条件を満たすマスの数え上げ)をDNCLの二重ループで書かせる・読ませる形で登場します。添字の指す位置を丁寧に確かめながらトレースしましょう。
選択肢の確認
1.○ 行と列の2つの添字で要素を管理するのが二次元配列。
2.× スタックは後入れ先出し(最後に入れた物を先に取り出す)のデータ構造。
3.× キューは先入れ先出し(並んだ順に取り出す)のデータ構造。
4.× ポインタはメモリ上の位置を指し示す仕組み。
ここだけは覚えよう
二次元配列=Data[行][列]で表を扱う — 処理は二重ループとセット、添字の始まりに注意。