Table of Contents
In this lesson, you will learn about the two-dimensional array or 2D array, known as a matrix, the way it’s declared and initialized.
2D array in C
A 2D or two-dimensional array is an array of arrays, which takes the form of a table containing rows and columns. for example:
int array[4][3];
can be represented in this form
Declaring a two-dimensional array in C
Here is how to declare a two-dimensional array in C:
int array[5][3];
The array above contains 15 values of integers.
Initializing a two-dimensional array in C
int my_array[5][2] = {{1, 3}, {1, 5},{3, 7},{4, 9},{2, 3}};
Example I of a two-dimensional array in C
#include <stdio.h>
int main ()
{
int i = 0, j = 0;
int array[4][3] = { {2, 2, 1}, {4, 3, 5}, {3, 2, 1}, {2, 2, 6} };
for (i = 0; i < 4; i++)
{
for (j = 0; j < 3; j++)
{
printf ("array[%d][%d] = %d \n", i, j, array[i][j]);
}
}
return 0;
}
Output
array[0][0] = 2
array[0][1] = 2
array[0][2] = 1
array[1][0] = 4
array[1][1] = 3
array[1][2] = 5
array[2][0] = 3
array[2][1] = 2
array[2][2] = 1
array[3][0] = 2
array[3][1] = 2
array[3][2] = 6
Example II of a two-dimensional array in C
#include<stdio.h>
int main(){
int Array[3][4];
// input values into array
int i, j;
for(i=0; i<3; i++) {
for(j=0;j<4;j++) {
printf("Please enter a value for Array[%d][%d]: ", i, j);
scanf("%d", &Array[i][j]);
}
}
// print out values to the console
printf("\n");
printf("2D array elements:\n");
for(i=0; i<3; i++) {
for(j=0;j<4;j++) {
printf("%d ", Array[i][j]);
if(j==3){
printf("\n");
}
}
}
return 0;
}
Output
Please enter a value for Array[0][0]: 5
Please enter a value for Array[0][1]: 8
Please enter a value for Array[0][2]: 9
Please enter a value for Array[0][3]: 1
Please enter a value for Array[1][0]: 4
Please enter a value for Array[1][1]: 4
Please enter a value for Array[1][2]: 3
Please enter a value for Array[1][3]: 7
Please enter a value for Array[2][0]: 6
Please enter a value for Array[2][1]: 1
Please enter a value for Array[2][2]: 2
Please enter a value for Array[2][3]: 02D array elements:
5 8 9 1
4 4 3 7
6 1 2 0
Points to remember
- A 2D array is an array of arrays
- You will need indexes to loop through a 2D array

