Introduction to 2-D Arrays in C++

Introduction to 2-D array

Introduction to 2-D Arrays

 

Multidimensional Arrays can be defined in simple words as an array of arrays. Data in multidimensional arrays are stored in tabular form (in row-major order).

The 2D array is organized as matrices which can be represented as the collection of rows and columns.

Syntax : 

The syntax of declaring a two-dimensional array is very much similar to that of a one-dimensional array, given as follows.

datatype variable_name[rows][column];

How do we access data in a 2D array

The elements of 2D arrays can be randomly accessed. Similar to one-dimensional arrays, we can access the individual cells in a 2D array by using the indices of the cells. There are two indices attached to a particular cell, one is its row number while the other is its column number.

we can store the value stored in any particular cell of a 2D array to some variable a by using the following syntax.

int x = a[i][j]

where i is row index and j is column index .

Introduction to 2-D arrays in C++

Size of 2-D array

The total number of elements that can be stored in a multidimensional array can be calculated by multiplying the size of all the dimensions.

Example: The array int a[5][6] can store total (5*6) = 30 elements.

Initializing 2D Arrays

DIRECT METHOD

data_type[][] variable_name = { {R1C1, R1C2, ….}, {R2C1,R2C2, ….} };

Example: int [ ][ ] arr = { { 2 ,  4 } ,  {6, 8 } };

USING LOOPS

We can use loops for initializing 2d array like
for (int i = 0; i < 2; i++)
  {
    for (int j = 0; j < 2; j++)
      {
	int a = x[i][j];
      }
  }

C++ Code to show how to initialize and print 2-D array

Run
#include<stdio.h>
using namespace std;
 
int main()
{
    // an array with 3 rows and 2 columns.
    int x[2][3] = {{1,2,3}, {4,5,6}};
 
    // output each array element's value
    for (int i = 0; i < 2; i++)
    {
        for (int j = 0; j < 3; j++)
        {
            cout << "Element at x[" << i << "][" << j << "]: ";
            cout << a[i][j]<<endl;
        }
    }
 
    return 0;
}

Output :

Element at x[0][0]: 1
Element at x[0][1]: 2
Element at x[0][2]: 3
Element at x[1][0]: 4
Element at x[1][1]: 5
Element at x[1][2]: 6