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

Для перебора элементов массива удобно использовать цикл for. В первом параметре переменной-счетчику присваивается значение 0 (элементы массива нумеруются с нуля), условием продолжения является значение переменной-счетчика меньше количества элементов массива. В третьем параметре указывается приращение на единицу на каждой итерации цикла. Внутри цикла доступ к элементу осуществляется с помощью квадратных скобок, внутри которых указывается переменная-счетчик. Пронумеруем все элементы массива, а затем выведем все значения в прямом и обратном порядке:

const int ARR_SIZE = 20;
int arr[ARR_SIZE];
// Нумеруем все элементы массива
for (int i = 0, j = 1; i < ARR_SIZE; ++i, ++j) {
   arr[i] = j;
}
// Выводим значения в прямом порядке
for (int i = 0; i < ARR_SIZE; ++i) {
   std::cout << arr[i] << std::endl;
}
std::cout << "-------------------" << std::endl;
// Выводим значения в обратном порядке
for (int i = ARR_SIZE - 1; i >= 0; --i) {
   std::cout << arr[i] << std::endl;
}

В этом примере мы объявили количество элементов массива как постоянную величину (константа ARR_SIZE). Это очень удобно, так как размер массива приходится указывать при каждом переборе массива. Если количество элементов указывать в виде числа, то при изменении размера массива придется вручную изменять все значения. При использовании константы количество элементов достаточно будет изменить только в одном месте.

Цикл for всегда можно заменить циклом while. В качестве примера пронумеруем элементы в обратном порядке, а затем выведем все значения:

const int ARR_SIZE = 20;
int arr[ARR_SIZE];
// Нумеруем все элементы
int i = 0, j = ARR_SIZE;
while (i < ARR_SIZE) {
   arr[i] = j;
   ++i;
   --j;
}
// Выводим значения
i = 0;
while (i < ARR_SIZE) {
   std::cout << arr[i] << std::endl;
   ++i;
}

Перебрать все элементы массива позволяет цикл for each:

int arr[] = {10, 20, 30};
for (auto &element : arr) {
   std::cout << element << std::endl;
}

Учебник C++ (MinGW-W64)
Учебник C++ (MinGW-W64) в формате PDF

Помощь сайту

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов