C++ Урок 8: Массивы (одномерные и двумерные) с нуля

Массив — набор ячеек памяти, содержащих информацию одного типа. В отличие от переменной, хранящей одно значение, массив хранит множество значений. Например, массив может состоять из 20 переменных, каждая из которых называется элементом массива. Массивы могут содержать данные различных типов: целые числа, логические значения (true/false), символы (char), числа с плавающей точкой (float, double) и другие. Рассмотрим одномерные и двумерные массивы.

Одномерные массивы

Для объявления одномерного массива укажите тип данных элементов, имя массива, квадратные скобки [] и количество элементов (или инициализируйте массив, тогда размер определится автоматически). Пример массива целых чисел:

int arr[3] = {3, 7, 5};

Этот код объявляет массив arr из трёх целых чисел и инициализирует его значениями 3, 7 и 5. Если инициализация происходит при создании, указание размера массива можно опустить:

int arr[] = {3, 7, 5};

Компилятор определит размер массива как 3.

Индексация элементов массива начинается с нуля. В массиве arr:

  • arr[0] = 3
  • arr[1] = 7
  • arr[2] = 5

Доступ к элементам

Для доступа к элементу используется имя массива и индекс элемента в квадратных скобках. Например, для вывода на экран значения первого элемента массива arr:

std::cout << arr[0] << std::endl; // Выведет 3

Перебор элементов с помощью цикла

Удобный способ перебора элементов массива — использование цикла:

for (int i = 0; i < 3; i++) {
  std::cout << arr[i] << " ";
}
std::cout << std::endl; // Выведет 3 7 5

Этот код перебирает все элементы arr и выводит их на экран.

Запись данных в массив

Запись данных в массив аналогична доступу к элементам:

arr[2] = 34;

Этот код изменяет значение третьего элемента arr (с индексом 2) на 34.

Ввод данных с клавиатуры

Данные в массив можно вводить с клавиатуры:

int arr[3];
for (int i = 0; i < 3; i++) {
  std::cin >> arr[i];
}

Двумерные массивы

Двумерный массив — массив, элементы которого сами являются массивами. Объявление двумерного массива аналогично одномерному, но с двумя парами квадратных скобок:

int arr[3][2] = {{23, 34}, {12, 5}, {7, 9}};

Этот код объявляет двумерный массив arr размером 3×2.

Доступ к элементам двумерного массива

Для доступа к элементу используются два индекса:

std::cout << arr[0][1] << std::endl; // Выведет 34

Этот код выводит элемент, расположенный в первой строке (индекс 0) и втором столбце (индекс 1).

Перебор элементов двумерного массива

Перебор элементов двумерного массива осуществляется с помощью вложенных циклов:

for (int i = 0; i < 3; i++) {
  for (int j = 0; j < 2; j++) {
    std::cout << arr[i][j] << " ";
  }
  std::cout << std::endl;
}

Этот код выведет элементы массива в виде матрицы.

Вывод в виде матрицы

Для более наглядного вывода двумерного массива в виде матрицы можно использовать символ табуляции:

for (int i = 0; i < 3; i++) {
  for (int j = 0; j < 2; j++) {
    std::cout << arr[i][j] << "t"; // t - символ табуляции
  }
  std::cout << std::endl;
}

В этом уроке рассмотрены основы работы с одномерными и двумерными массивами в C++. Массивы — фундаментальная структура данных, и понимание их работы необходимо для дальнейшего изучения языка. Трехмерные и более высокомерные массивы основаны на тех же принципах, что и двумерные, используя вложенные циклы для доступа и обработки элементов.

Что будем искать? Например,программа