Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C/C++の配列とは?宣言・初期化・要素へのアクセス方法を徹底解説

配列(Array)とは、同じ型の要素を連続的に並べてまとめたデータ構造です。配列は複数のデータを一括して格納するために使われますが、実務上は「同じ型の変数をまとめた集合」と捉えると理解しやすくなります。

例えば、number0、number1、…、number99 のように個別の変数を100個宣言する代わりに、numbers という1つの配列変数を宣言し、numbers[0]、numbers[1]、…、numbers[99] として個々の変数を表すことができます。配列内の特定の要素には、インデックス(添字)を使ってアクセスします。

すべての配列はメモリ上の連続した領域で構成されています。先頭の要素が最も低いアドレスに配置され、最後の要素が最も高いアドレスに配置されます。

配列の宣言方法

配列を宣言するには、要素の型と配列に必要な要素数を次のように指定します。

type arrayName [ arraySize ];

サイズを指定して配列を宣言する

これは「1次元配列」と呼ばれる形式です。arraySize には0より大きい整数定数を指定し、type には任意の有効なC++のデータ型を指定できます。例えば、double 型の要素を10個持つ balance という配列を宣言するには、次のステートメントを使用します。

double balance[10];

配列の要素とアクセス方法

配列内の個々のデータは「配列の要素」と呼ばれます。配列の要素には、インデックスを使ってアクセスできます。

上記のように mark という配列を宣言した場合、最初の要素は mark[0]、2番目の要素は mark[1] となります。配列のインデックスは必ず 0 から始まる点に注意しましょう。

C++で配列を初期化する方法

サイズを指定して要素を初期化する宣言

int mark[5] = {19, 10, 8, 17, 9};

要素の初期化のみで配列を宣言する

int mark[] = {19, 10, 8, 17, 9};

この場合、配列のサイズは初期化子の数から自動的に決定されます。各要素の値は以下のようになります。

mark[0] は 19、mark[1] は 10、mark[2] は 8、mark[3] は 17、mark[4] は 9

配列要素の挿入と表示方法

配列の要素への値の代入や、ユーザーからの入力、要素の表示は次のように行います。

int mark[5] = {19, 10, 8, 17, 9};

// 4番目の要素を9に変更する
mark[3] = 9;
// ユーザーから入力を受け取り、3番目の要素に格納する
cin >> mark[2];
// ユーザーから入力を受け取り、(i+1)番目の要素に格納する
cin >> mark[i];
// 配列の最初の要素を表示する
cout << mark[0];
// 配列のi番目の要素を表示する
cout << mark[i-1];

実例:C++の配列プログラム

次は、ユーザーが入力した5つの数値を配列に格納し、その合計を計算するC++プログラムの例です。

入力例

Enter 5 numbers:
3
4
5
4
2

出力例

Sum = 18

サンプルコード

#include <iostream>
using namespace std;

int main() {
    int numbers[5], sum = 0;
    cout << "Enter 5 numbers: ";
    for (int i = 0; i < 5; ++i) {
        cin >> numbers[i];
        sum += numbers[i];
    }
    cout << "Sum = " << sum << endl;
    return 0;
}

このプログラムでは、for ループを使って配列の各要素にユーザーの入力を順番に格納しながら合計を累積しています。このように配列とループを組み合わせることで、大量のデータを効率的に処理できるのが配列の大きな利点です。

  1. 【初心者向け】C/C++における多次元配列の初期化方法をわかりやすく解説

    多次元配列とは、次元数が2以上ある配列のことです。本記事では、3×3×3の多次元配列におけるメモリ割り当ての仕組みと、実際に配列を初期化して内容を表示するC++プログラムを紹介します。下図は、次元が3×3×3の多次元配列に対するメモリ割り当ての戦略を示したものです。アルゴリズム多次元配列を初期化するプログラムは、以下の手順で構成されます。Begin 多次元配列の要素を初期化する 配列のサイズを出力する 配列の内容を表示する Endサンプルコード以下は、2行2列の二次元配列を初期化し、そのサイズと内容を出力するC++プログラムです。#include<iostream

  2. C/C++における多次元配列の定義方法を徹底解説

    配列とは、同じ型の要素を連続したメモリ領域に格納したデータ構造です。メモリ上では、最も小さいアドレスが先頭の要素に対応し、最も大きいアドレスが末尾の要素に対応します。配列のインデックスは 0 から始まり、配列サイズ − 1 で終わる点に注意してください。また、配列のサイズは必ず 0 より大きい整数である必要があります。配列のインデックスとサイズの関係具体的な例を見てみましょう。配列サイズ = 10 の場合 先頭のインデックス = 0 末尾のインデックス = 配列サイズ - 1 = 10 - 1 = 9つまり、サイズ10の配列にアクセスできるインデックスは 0〜9 の合計10個ということになりま