logo

Двовимірний масив на C

Двовимірний масив можна визначити як масив масивів. Двовимірний масив організовано у вигляді матриць, які можна представити як сукупність рядків і стовпців. Однак 2D-масиви створюються для реалізації структури даних, схожої на реляційну базу даних. Це забезпечує легкість одночасного зберігання великої кількості даних, які можна передати будь-якій кількості функцій, де це необхідно.

вирівняти зображення css

Оголошення двовимірного масиву в C

Синтаксис для оголошення 2D-масиву наведено нижче.

 data_type array_name[rows][columns]; 

Розглянемо наступний приклад.

 int twodimen[4][3]; 

Тут 4 — це кількість рядків, а 3 — кількість стовпців.

Ініціалізація 2D-масиву в C

У одновимірному масиві нам не потрібно вказувати розмір масиву, якщо оголошення та ініціалізація виконуються одночасно. Однак це не працюватиме з двовимірними масивами. Нам доведеться визначити принаймні другий вимір масиву. Двовимірний масив можна оголосити та визначити наступним чином.

 int arr[4][3]={{1,2,3},{2,3,4},{3,4,5},{4,5,6}}; 

Приклад двовимірного масиву на C

 #include int main(){ int i=0,j=0; int arr[4][3]={{1,2,3},{2,3,4},{3,4,5},{4,5,6}}; //traversing 2D array for(i=0;i<4;i++){ for(j="0;j&lt;3;j++){" printf('arr[%d] [%d]="%d" 
',i,j,arr[i][j]); } end of j i return 0; < pre> <p> <strong>Output</strong> </p> <pre> arr[0][0] = 1 arr[0][1] = 2 arr[0][2] = 3 arr[1][0] = 2 arr[1][1] = 3 arr[1][2] = 4 arr[2][0] = 3 arr[2][1] = 4 arr[2][2] = 5 arr[3][0] = 4 arr[3][1] = 5 arr[3][2] = 6 </pre> <h3>C 2D array example: Storing elements in a matrix and printing it.</h3> <pre> #include void main () { int arr[3][3],i,j; for (i=0;i<3;i++) { for (j="0;j&lt;3;j++)" printf('enter a[%d][%d]: ',i,j); scanf('%d',&arr[i][j]); } printf('
 printing the elements ....
'); for(i="0;i&lt;3;i++)" printf('
'); printf('%d	',arr[i][j]); < pre> <p> <strong>Output</strong> </p> <pre> Enter a[0][0]: 56 Enter a[0][1]: 10 Enter a[0][2]: 30 Enter a[1][0]: 34 Enter a[1][1]: 21 Enter a[1][2]: 34 Enter a[2][0]: 45 Enter a[2][1]: 56 Enter a[2][2]: 78 printing the elements .... 56 10 30 34 21 34 45 56 78 </pre> <hr></3;i++)></pre></4;i++){>

Приклад двовимірного масиву C: збереження елементів у матриці та її друк.

 #include void main () { int arr[3][3],i,j; for (i=0;i<3;i++) { for (j="0;j&lt;3;j++)" printf(\'enter a[%d][%d]: \',i,j); scanf(\'%d\',&arr[i][j]); } printf(\'
 printing the elements ....
\'); for(i="0;i&lt;3;i++)" printf(\'
\'); printf(\'%d	\',arr[i][j]); < pre> <p> <strong>Output</strong> </p> <pre> Enter a[0][0]: 56 Enter a[0][1]: 10 Enter a[0][2]: 30 Enter a[1][0]: 34 Enter a[1][1]: 21 Enter a[1][2]: 34 Enter a[2][0]: 45 Enter a[2][1]: 56 Enter a[2][2]: 78 printing the elements .... 56 10 30 34 21 34 45 56 78 </pre> <hr></3;i++)>