Освоение оператора continue в C++: практические примеры и управление циклами
Освоение оператора continue в C++
Это руководство объясняет, как работает оператор continue в циклах C++, с наглядными примерами для for, while и вложенных циклов.
В программировании на C++ ключевое слово continue указывает циклу пропустить оставшийся код в текущей итерации и немедленно перейти к оценке условия цикла или выражению обновления для следующего прохода.
Синтаксис прост:
continue;
Прежде чем изучать continue, убедитесь, что вы знакомы с:
- Циклами
forв C++ - Операторами
if/elseв C++ - Циклами
whileв C++
Как работает continue в C++

Пример 1: использование continue в цикле for
В цикле for оператор continue пропускает текущую итерацию и переходит сразу к выражению обновления.
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; ++i) {
if (i == 3) {
continue; // Пропустить печать, когда i равно 3
}
cout << i << endl;
}
return 0;
}
Результат
1 2 4 5
Пояснение:
- Когда
iравно 3,continueпропускает операторcout. - Цykl затем увеличивает
iдо 4 и переходит к следующей итерации. - Следовательно, печатаются только 1, 2, 4 и 5.
Совет: continue наиболее эффективен в сочетании с условной логикой.
Пример 2: использование continue в цикле while
В цикле while оператор continue возвращает управление к проверке условия цикла.
#include <iostream>
using namespace std;
int main() {
int sum = 0, number = 0;
while (number >= 0) {
sum += number; // Накапливаем положительные числа
cout << "Enter a number: ";
cin >> number;
if (number > 50) {
cout << "The number is greater than 50 and won't be calculated." << endl;
number = 0; // Сброс для продолжения запросов
continue; // Пропустить остаток этого цикла
}
}
cout << "The sum is " << sum << endl;
return 0;
}
Пример запуска
Enter a number: 12 Enter a number: 0 Enter a number: 2 Enter a number: 30 Enter a number: 50 Enter a number: 56 The number is greater than 50 and won't be calculated. Enter a number: 5 Enter a number: -3 The sum is 99
Ключевые моменты:
- Числа > 50 вызывают
continue, пропуская сложение и повторно запрашивая ввод. - Отрицательный ввод завершает цикл.
Примечание: Та же логика применяется к циклам do…while.
Использование continue во вложенных циклах
Когда continue помещен внутри вложенных циклов, он влияет только на самый внутренний цикл.
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 3; ++i) {
for (int j = 1; j <= 3; ++j) {
if (j == 2) {
continue; // Пропустить j == 2 для этого i
}
cout << "i = " << i << ", j = " << j << endl;
}
}
return 0;
}
Результат
i = 1, j = 1 i = 1, j = 3 i = 2, j = 1 i = 2, j = 3 i = 3, j = 1 i = 3, j = 3
Оператор continue пропускает итерацию внутреннего цикла, где j == 2, затем переходит к следующему значению j.
Помните: break выходит из всего цикла, тогда как continue пропускает только текущую итерацию.
Язык C
- Условная логика в C#: if, if-else, if-else-if и вложенные if
- Освоение оператора switch в C#: синтаксис, примеры и лучшие практики
- Оператор break в C#: как и когда использовать
- Оператор continue в C#: как эффективно пропускать итерации циклов
- Понимание преобразования типов в C++: неявное, явное и техники приведения
- Освоение операторов C++: полное руководство с практическими примерами
- Комментарии в C++: лучшие практики для читаемого и поддерживаемого кода
- Освоение условных операторов C++: if, if...else и вложенные if...else
- Шаблоны классов в C++: практическое руководство
- Оператор switch-case в C++: синтаксис, применение и практические примеры