ArraysMultidimensional ArraysMultidimensional Arrays in CMultidimensional Arrays in CMultidimensional arrays in C are arrays that have more than one dimension, allowing you to store multiple related data items in a single structure. In C, you can create arrays with any number of dimensions. For example:One Dimensional Array (also called 1D Arrays or Single Dimensional Arrays)Two Dimensional Array (2D Arrays)Three Dimensional Array (3D Arrays)And so on...2d arrayThe most common type of multidimensional array is the two-dimensional (2D) array, which is often thought of as a table with rows and columns.One Dimensional Arrays - Recap1D arrays in C are arrays that have only one dimension, allowing you to store a sequence of related data items in a single structure. In C, you can create arrays of any size, and the elements of a one-dimensional array can be of any data type.The syntax for declaring a one-dimensional array in C is:data_type array_name[array_size];For example: The following code declares an array arr with 5 elements of type int:int arr[5];You can access the elements of a one-dimensional array using an index, which is a number that represents the position of the element in the array. The index starts at 0, so the first element of the array is arr[0], the second element is arr[1], and so on.One Dimensional Arrays - ExampleHere is an example that initializes a one-dimensional array and then prints the value of its second element:#include <stdio.h>int main(void){ int arr[5] = {10, 20, 30, 40, 50}; printf("The second element is: %d\n", arr[1]); return 0;}Run Example >>Output:Explanation:In the main function, a one-dimensional integer array arr is declared and initialized with 5 elements. The array elements are assigned values of 10, 20, 30, 40, and 50 in the order in which they are declared.The program then uses the printf function to print the value of the second element of the array, which is 20. The expression arr[1] accesses the second element of the array, with the first element being at index 0.Finally, the program returns 0 to indicate success.Two Dimensional ArraysTwo-dimensional arrays in C (also called as 2D Arrays) are arrays that have two dimensions, allowing you to store a table of related data items in a single structure.Each element in a two-dimensional array is itself a one-dimensional array with a specific number of elements.The syntax for declaring a two-dimensional array in C is:data_type array_name[number_of_rows][number_of_columns];For example: The following code declares a two-dimensional array arr with "3 rows" and "4 columns":int arr[3][4];You can access the elements of a two-dimensional array using two indices, one for the row and one for the column. The indices start at 0, so the first element of the first row is arr[0][0], the second element of the first row is arr[0][1], and so on.Two Dimensional Arrays - ExampleHere is an example that initializes a two-dimensional array and then prints the value of its second row, third column:#include <stdio.h>int main(void){ int arr[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}; printf("The value is: %d\n", arr[1][2]); return 0;}Run Example >>Output:Explanation:In the main function, a two-dimensional integer array arr is declared and initialized with 3 rows and 4 columns. The array elements are assigned values in a nested manner, with each row containing 4 values.The program then uses the printf function to print the value of the element located at arr[1][2], which is 7. - The expression arr[1][2] accesses the second row, third column of the two-dimensional array.Three Dimensional ArraysThree-dimensional arrays in C (also called as 3D Arrays) are arrays that have three dimensions, allowing you to store a set of related two-dimensional data items in a single structure.Each element in a three-dimensional array is itself a two-dimensional array with a specific number of rows and columns.The syntax for declaring a three-dimensional array in C is:data_type array_name[number_of_layers][number_of_rows][number_of_columns];For example: The following code declares a three-dimensional array arr with 2 layers, 3 rows, and 4 columns:int arr[2][3][4];You can access the elements of a three-dimensional array using three indices, one for the layer, one for the row, and one for the column. The indices start at 0, so the first element of the first layer, first row, is arr[0][0][0], the second element of the first layer, first row, is arr[0][0][1], and so on.Three Dimensional Arrays - ExampleHere is an example that initializes a three-dimensional array and then prints the value of its first layer, second row, third column:#include <stdio.h>int main(void){ int arr[2][3][4] = {{{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}, {{13, 14, 15, 16}, {17, 18, 19, 20}, {21, 22, 23, 24}}}; printf("The value is: %d\n", arr[0][1][2]); return 0;}Run Example >>Output:Explanation:The program declares and initializes a three-dimensional integer array arr with 2 layers, 3 rows, and 4 columns. The array elements are assigned values in a nested manner, with the first layer containing the first two-dimensional array and the second layer containing the second two-dimensional array.The main function then uses the printf function to print the value of the element located at arr[0][1][2], which is 7.Finally, the program returns 0 to indicate success.notePlease note that in C, multidimensional arrays are stored in row-major order, meaning that the elements of each row are stored consecutively in memory.When to use Multi-dimensional arraysMulti-dimensional arrays are useful in various situations where the data can be organized in a grid-like structure.Matrix operations: Multi-dimensional arrays can be used to represent matrices and perform matrix operations such as multiplication and transposition.Image processing: In image processing, a two-dimensional array can be used to represent an image, with each element of the array representing a pixel in the image.Tables: Multi-dimensional arrays can be used to represent tables, with each row of the array representing a row in the table and each column representing a column.Game boards: Multi-dimensional arrays can be used to represent game boards, with each element of the array representing a cell or a square on the board.