Цикл for в C: синтаксис, механика и практические примеры
Цикл for в C: синтаксис, механика и практические примеры
Узнайте, как писать, понимать и эффективно использовать цикл for в C с чёткими объяснениями и примерами кода.
Цикл — это управляющая структура, повторяющая блок кока до тех пор, пока заданное условие не станет ложным. В C есть три основных цикла:
- for
- while
- do…while
Это руководство фокусируется на for. Следующие посты покроют while и do…while.
Понимание цикла for
Канонический синтаксис по стандарту C11:
for (initialization; test; update) {
/* тело цикла */
}
Каждая компонента играет свою роль:
- Инициализация выполняется один раз перед стартом цикла.
- Условие (test) проверяется перед каждой итерацией; если ложно — цикл завершается.
- Обновление (update) выполняется после каждой итерации, обычно изменяя счётчик.
Как работает цикл for
- Инициализация выполняется один раз.
- Условие вычисляется. Если
false— цикл завершается. - Если истинно — выполняется тело, затем обновление.
- Процесс повторяется, пока условие не станет ложным.
Для глубокого понимания логических условий изучите операторы отношения и логики в C.
Блок-схема цикла for

Пример 1: Печать чисел 1–10
#include <stdio.h>
int main(void) {
for (int i = 1; i <= 10; ++i) {
printf("%d ", i);
}
return 0;
}
Вывод
1 2 3 4 5 6 7 8 9 10
Пошаговый разбор:
iинициализируется значением 1.- Тест
i <= 10истинно, печатаетсяi(1). - Обновление
++iувеличиваетiдо 2, цикл повторяется. - Продолжается до
i= 11, когда тест проваливается и цикл endet.
Пример 2: Сумма первых N натуральных чисел
#include <stdio.h>
int main(void) {
int num, count, sum = 0;
printf("Enter a positive integer: ");
scanf("%d", &num);
for (count = 1; count <= num; ++count) {
sum += count;
}
printf("Sum = %d\n", sum);
return 0;
}
Вывод
Enter a positive integer: 10 Sum = 55
Объяснение:
numхранит ввод пользователя.countстартует с 1. Тестcount <= numистинно,sumстановится 1.- После
++count,count= 2; тест истинно, добавляем 2 кsum(теперь 3). - Итерации продолжаются до
count= 11, когда тест проваливается. - Итоговый
sum(55) печатается.
Вариации цикла for
Множественная инициализация и обновление
for (int i = 0, j = 10; i < j; ++i, --j) {
// i растёт, j уменьшается
}
Бесконечный цикл
for (;;) {
// бесконечный цикл, выход через break
}
Цикл for с диапазоном (C++11, не в C)
В чистом C нет range-based for, но можно эмулировать через макросы или использовать while.
Частые ошибки
- Точка с запятой после
for(...);— пустое тело, цикл ничего не делает. - Изменение счётчика внутри тела — приводит к неожиданному поведению.
- Переполнение счётчика при больших пределах — используйте беззнаковые типы или проверки.
Далее: циклы while и do…while для дополнительных паттернов управления потоком.
Язык C
- Вольфрамосплавные пули: экологичная высокопроизводительная альтернатива свинцу
- Циклы while и do-while в C#: синтаксис, примеры и лучшие практики
- Цикл for в C#: синтаксис, поток выполнения и практические примеры
- Освоение улучшенного цикла for в Java: синтаксис, примеры и лучшие практики
- Java-программа для идентификации чисел Армстронга с использованием for-цикла
- Java-проверка чисел-палиндромов: алгоритмы с while и for циклами
- Освоение циклов Python: for, while, break, continue и enumerate
- Освоение функции range() в Python: от основ к продвинутым сценариям
- Регулярные выражения в C#: Regex, паттерны и практические примеры
- Производство печатных плат в эру 5G: тренды и вызовы