Добавить в закладки |
|
Меню сайта |
|
Полезные ссылки |
|
Друзья сайта |
|
|
Приветствую Вас, Гость · ![rss](/images/png/58.png) |
06-Фев-2025, 13:04 |
|
Двумерные массивы в C++
Двумерный массив – это одномерный массив из одномерных массивов. Для примера определим двумерный массив m размером 3 x 4.
int m [3] [4] ;
Покажем, что такое определение логически вытекает из представления о двумерном массиве как об одномерном массиве из одномерных же массивов.
Начнем с того, что сначала объявим промежуточный тип M – одномерный массив из 4-х целых чисел
typedef int M [4];
Теперь определение M x; означает тоже самое, что int x[4];, каким бы ни было выражение x.
Определим одномерный массив из элементов типа M, т.е. массив символов.
M m[3];
В роли x здесь выступает выражение m[3]. Подставим его в int x[4]; и получим объявление двумерного массива без промежуточного типа M, как это обычно и делается.
int m[3][4];
Исходя из общего принципа размещения элементов массива в памяти (плотно и в порядке возрастания номеров), можно утверждать, что элементы двумерного массива m[3][4] займут места в памяти в следующем порядке: m[0][0], m[0][0], m[0][1], m[0][2], m[0][3], m[1][0], m[1][1], m[1][2], m[1][3], m[2][0], m[2][1], m[2]2], m[2][3].
Пример. Ввести матрицу M размера 3 x 3. Поменять местами начальную и последнюю строки и вывести результат на экран.
// объявить, определить и инициализировать массив int M [3] [3] = {{11,12,13}, {21,22,23}, {31,32,33}}; // поменять местами строки for (int j = 0; j < 3; j++) {
int R = M [0] [j];
M [0] [j] = M [1] [j];
M [1] [j] = R;
} // вывести массив построчно for (int i = 0; i < 3; i++) {
for (j=0; j < 3; j++)
{
cout << M [i] [j] << " ";
}
cout << endl;
}
Источник: http://www.cplus-plus.ru |
Категория: Статьи по C++ | Добавил: FazaNaka (16-Июл-2010)
|
Просмотров: 1034
| Рейтинг: 0.0/0 |
|
|