КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Инициализация двумерных массивов
Объявление двумерных массивов Текст лекции. Лекция 13. Двумерные массивы: задачи поиска, замены и суммирования элементов двумерного массива. Краткая аннотация лекции. В лекции рассматриваются понятие, определение, объявление, инициализация, генерация и вывод двумерных массивов, расположение в памяти элементов массивов, связь между указателями и двумерными массивами, типовые алгоритмы поиска, замены и суммирования в двумерных массивах. Цель лекции: изучить понятия, особенности внутреннего представления способы генерации и вывода многомерных массивов, научиться выполнять объявление, инициализацию, генерацию и вывод двумерных массивов, использование алгоритмов поиска, замены и суммирования в двумерных массивах при решении задач на языке C++. Двумерные массивы, являющиеся упорядоченными однотипными объектами, можно отождествлять с прямоугольной матрицей. Двумерные массивы состоят из строк и столбцов. Синтаксис определения массива без дополнительных спецификаторов и модификаторов имеет два формата: Тип ИмяМассива[ВыражениеТипаКонстанты][ВыражениеТипаКонстанты]; или Тип ИмяМассива[][]; ИмяМассива – идентификатор массива. Тип – тип элементов объявляемого массива. Элементами массива не могут быть функции, файлы и элементы типа void. ВыражениеТипаКонстанты – задает количество элементов (размерность) массива. Выражение константного типа вычисляется на этапе компиляции. Данное константное выражение может быть опущено в случаях если: · при объявлении массив инициализируется; · массив объявлен как формальный параметр функции; · массив объявлен как ссылка на массив, явно определенный в другом файле. Например: 1) int a[100][50];//массив из 100´50 элементов целого типа 2) double d[4][10];// массив из 4´10 элементов типа double 3) int t=5, k=8; float wer[2*t+k][2*t+k]; //массив из (2*t+k)´(2*t+k) элементов вещественного типа 4) int sample[853][157]; //массив из 853 строк и 157 столбцов, элементы типа int равносильно объявлению const int N_max=853, int M_max=157; int sample[N_max][M_max];
равносильно объявлению #define N_max 853 #define M_max 157 ... int sample[N_max][M_max];
Двумерные массивы располагаются в памяти в порядке быстрого изменения последнего индекса. Так, например, данные двумерного массива (состоящего из 3 строк и 10 столбцов и определенного как float A[3][10];), располагаются следующим образом:
Двумерные массивы инициализируются так же, как и одномерные. Например: int w[3][3]={ //инициализируется целочисленный массив размерностью 3´3 {2, 3, 4} //1-я строка {3, 4, 8} //2-я строка {1, 0, 9} //3-я строка };
float w[2][3]={ //инициализируется вещественный массив размерностью 2´3 {2.1, 3.4, 4.5} //1-я строка {5.0, 6.4, 3.9} //2-я строка }; равносильно инициализации float w[][3]={ {2.1, 3.4, 4.5} //1-я строка {5.0, 6.4, 3.9} //2-я строка }; Последовательности, выделенные в фигурные скобки, соответствуют строкам массива, в случае отсутствия скобок инициализация будет выполнена неправильно.
int w[3][5]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
int w[3][5]={{1, 2, 3}, {4, 5, 6, 7, 8}, {9, 10, 11}};
Дата добавления: 2014-01-20; Просмотров: 1410; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |