今日の人気記事

  1. printf関数の変換指定子
  2. 乱数 - 1〜10のランダムな数値を出力する
  3. continue文 - ループをスキップ
  4. MinGW - gcc の環境設定(パスを通す) - Windows環境
  5. 入力した文字列の文字数を表示する(出力)

多次元配列

当ページのリンクには広告が含まれています。

スポンサーリンク

配列(1次元配列)の次は「多次元配列」を取り扱う方法をみていきます。

多次元配列

C言語では、1次元配列に加え多次元配列も使用することができます。それでは多次元配列の宣言(定義)方法をみていきましょう。

2次元配列

まずは、2次元配列です。

変数の型 変数名[配列の数][配列の数];

このように角括弧 [] で囲んで「配列の数」を2つ指定します。

例えば、こんな感じです。

int var[2][2];

2次元配列の変数に値を代入する場合は以下のように記述します。

var[0][0] = 3;
var[0][1] = 5;
var[1][0] = 7;
var[1][1] = 9;

多次元配列

変数の型 変数名[配列の数][配列の数][配列の数][配列の数][配列の数]…;

必要であれば何次元の配列でも使用することができます。必要な分だけ角括弧 [] で囲んで「配列の数」を続ければ、OKです。

例えば、5次元配列はこんなんです。

int var[3][2][4][5][3];

それでは実際にプログラムで多次元配列を使ってみましょう(ここでは2次元配列)。

#include <stdio.h>

int main(void) {

  /* 2次元配列 */
  int kuku[9][9];

  /* 九九の計算 */
  kuku[0][0] = 1 * 1;
  kuku[0][1] = 1 * 2;
  kuku[0][2] = 1 * 3;
  kuku[0][3] = 1 * 4;
  kuku[0][4] = 1 * 5;
  kuku[0][5] = 1 * 6;
  kuku[0][6] = 1 * 7;
  kuku[0][7] = 1 * 8;
  kuku[0][8] = 1 * 9;

  kuku[1][0] = 2 * 1;
  kuku[1][1] = 2 * 2;
  kuku[1][2] = 2 * 3;
  kuku[1][3] = 2 * 4;
  kuku[1][4] = 2 * 5;
  kuku[1][5] = 2 * 6;
  kuku[1][6] = 2 * 7;
  kuku[1][7] = 2 * 8;
  kuku[1][8] = 2 * 9;

  /* 配列の出力 */
  printf("%d, %d, %d, %d, %d, %d, %d, %d, %d\n",
          kuku[0][0], kuku[0][1], kuku[0][2],
          kuku[0][3], kuku[0][4], kuku[0][5],
          kuku[0][6], kuku[0][7], kuku[0][8]);
  printf("%d, %d, %d, %d, %d, %d, %d, %d, %d\n",
          kuku[1][0], kuku[1][1], kuku[1][2],
          kuku[1][3], kuku[1][4], kuku[1][5],
          kuku[1][6], kuku[1][7], kuku[1][8]);

  return 0;
}

実行結果です。

1, 2, 3, 4, 5, 6, 7, 8, 9
2, 4, 6, 8, 10, 12, 14, 16, 18

このように2次元配列に代入した値が表示されます。

次は「四則演算 - 算術演算子」の取扱い方法を確認します。

基本構文 の人気記事

  1. printf関数の変換指定子
  2. 条件演算子(3項演算子)「? :」
  3. 配列の要素を出力(表示)する
  4. continue文 - ループをスキップ
  5. while文 - 繰り返し処理
  6. 比較演算子 - 条件分岐
  7. (前置・後置)インクリメント演算子, ++
  8. 関数のプロトタイプ宣言
  9. 数値の桁揃え
  10. break文 - ループから抜ける

関連記事(一部広告含む)