Язык С поддерживает работу с многомерными массива. Некоторые компиляторы позволяют создавать массивы до 12 индексов.
Пример 1.Рассмотрим расписание уроков отдельного класса в школе. Пусть по горизонтали указывается номер дня недели, по вертикали – номер урока, а на их пересечении – название предмета.
День недели\
№ урока
1 пн
История
Ин.язык
Ин.лит-ра
Физ-ра
2 вт
Алгебра
Алгебра
Укр.язык
Анг
3 ср
Химия
Укр.лит-ра
История
4 чт
Биология
Геометрия
Геометрия
Физ-ра
5 пт
Укр.язык
Химия
Анг.
В четверг на 2 уроке проводится урок геометрии. Информация представлена в виде таблицы. Таблицу можно рассматривать как пример двумерного массива.
По горизонтали располагаются строки, по вертикали – столбцы, а на их пересечении – элемент двумерного массива. Можно также сказать, что в таблице каждая ячейка – это название предмета, который проводится в i-ый день недели на j-ом уроке, где i – номер строки, j – номер столбца.
Пример 2.Рассмотрим расписание уроков всех классов в школе. Пусть по горизонтали указывается номер дня недели, по вертикали – номер урока, в глубину – название класса, а на их пересечении – название предмета. Получается куб, или массив таблиц, трехмерный массив. Можно также сказать, что в кубе каждая ячейка – это название предмета, который проводится в i-ый день недели на j-ом уроке для k-го класса.
Пример 3.Пусть торговое предприятие имеет расширенную сеть магазинов. Возникла необходимость построить сводную таблицу со следующей информацией: сколько и каких товаров в каждом магазине. Таблицу можно представить как набор ячеек, где ячейка с координатами i и j содержит количество i-го товара j-го магазина.
А если требуется еще указывать номер партии поставки каждого вида товара, то добавляется еще одна размерность и уже получается трехмерный массив, в котором элемент массива содержит количество i-го товара j-го магазина k-той партии.