C++ Multi-Dimensional Arrays

In C++, a multi-dimensional array is an array of arrays. It allows you to store and manipulate collections of data in a structured manner, where each element can be accessed by specifying multiple indices.

There are two ways to declare a multi-dimensional array in C++: using a single set of square brackets or using multiple sets of square brackets. The first approach is called a row-major order, and the second approach is called a column-major order.

Example: Row-Major Order

1#include <iostream> 2using namespace std; 3 4int main() 5{ 6 int matrix[2][3]; 7 8 cout << "Enter 6 elements:" << endl; 9 for (int i = 0; i < 2; i++) 10 { 11 for (int j = 0; j < 3; j++) 12 { 13 cin >> matrix[i][j]; 14 } 15 } 16 17 cout << "The elements of the matrix are:" << endl; 18 for (int i = 0; i < 2; i++) 19 { 20 for (int j = 0; j < 3; j++) 21 { 22 cout << matrix[i][j] << " "; 23 } 24 cout << endl; 25 } 26 27 return 0; 28}

Output:

1Enter 6 elements: 21 32 43 54 65 76 8The elements of the matrix are: 91 2 3 104 5 6

In the above example, matrix[2][3] declares a 2x3 matrix, where matrix[i][j] accesses the element located at the ith row and the jth column of the matrix.

Example: Column-Major Order

1#include <iostream> 2using namespace std; 3 4int main() 5{ 6 int matrix[3][2]; 7 8 cout << "Enter 6 elements:" << endl; 9 for (int j = 0; j < 2; j++) 10 { 11 for (int i = 0; i < 3; i++) 12 { 13 cin >> matrix[i][j]; 14 } 15 } 16 17 cout << "The elements of the matrix are:" << endl; 18 for (int i = 0; i < 3; i++) 19 { 20 for (int j = 0; j < 2; j++) 21 { 22 cout << matrix[i][j] << " "; 23 } 24 cout << endl; 25 } 26 27 return 0; 28}

Output:

1Enter 6 elements: 21 32 43 54 65 76 8The elements of the matrix are: 91 4 102 5 113 6

In the above example, matrix[3][2] declares a 3x2 matrix, where matrix[i][j] accesses the element located at the ith column and the jth row of the matrix.