Багатовимірні числові масиви

Мова С дозволяє працювати з масивами будь-якої розмірності, пристрій багатовимірного масиву має деякі особливості, які ми розглянемо на прикладі двовимірного масиву.

Для того, щоб створити двовимірний масив, необхідно використовувати два набори квадратних дужок:

/ * Двовимірний масив елементів double * /

Двовимірний масив визначається як масив масивів, про такий масив кажуть, що у нього 2 елементи по 4 елементи в кожному, якщо ж розглядати такий масив як матрицю, то можна сказати, що вона має 2 рядки і 4 шпальти. Обидва індекси, як і в одновимірних масивах, починаються з нуля. Тобто, в масиві m є рядки 0 і 1, кожна з яких складається з елементів 0..3.

Багатовимірні масиви також можна явно ініціалізувати при створенні, укладаючи списки значень для рядків в додатковий набір фігурних дужок:

Як і в випадку одновимірних масивів, ви можете задавати в повному обсязі значення, а тільки частину. Наприклад, написавши

тут не започатковано тільки перші два елементи нульової рядки матриці.

Розмірність багатовимірного масиву також як і одновимірного, можна обчислити автоматично. Але на відміну від одновимірного масиву, де можна не вказувати розмірність, в багатовимірних масивах можна не вказувати тільки першу розмірність, друга ж (і інші, якщо їх більше двох) повинна бути вказана. Наприклад, такий запис

приведе до створення масиву 2x4.

Працювати з елементами багатовимірного масиву можна, як зі звичайними змінними.

Приклад: Фрагмент програми, що підсумовує останній стовпець матриці.

for (i = 0, j = 3; i<2; i++)

Приклад: Програма вводить з клавіатури одновимірний масив з 5 цілих чисел, після чого виводить кількість ненульових елементів. Введення кожного елемента оформлений «із запрошенням» (виводиться підказка з номером елемента).

#define SIZE 5 // розмір масиву

int a [SIZE]; // масив

int n = 0; // кількість ненульових ел-тів

CharToOem ( "\ nВведіте масив цілих чисел. \

1. Дайте загальне визначення масиву даних.

2. Чи може масив містити змінні різних типів?

4. Що таке індекс масиву?

5. Наведіть приклад звернення до елементу масиву.

7. Що таке рядок з мовою С?

8. Як присвоїти значення строкової змінної?

1. Генератор випадкових чисел повинен видавати різні послідовності при багаторазовому запуску програми.

2. Передбачити можливість швидкої зміни розмірності масиву, для чого в тексті програми всюди, де це необхідно використовувати іменовану константу в якості розмірності масиву.