The continue statement helps skip the rest of the current loop cycle and move to the next one. It lets you avoid running some code inside a loop when a condition is met.
When you want to skip processing certain items in a loop but continue looping.
When filtering data inside a loop and ignoring unwanted cases.
When you want to avoid nested if-else blocks by skipping early in a loop.
When you want to improve readability by handling special cases first and continuing.
When you want to jump to the next iteration without breaking the whole loop.
Syntax
C
continue;
The continue statement is used inside loops only (for, while, do-while).
It immediately skips to the next iteration of the loop.
Examples
This loop prints numbers 0 to 4 but skips printing 2 because of continue.
C
for (int i = 0; i < 5; i++) {
if (i == 2) {
continue;
}
printf("%d ", i);
}
This while loop skips printing 3 and continues with the next numbers.
C
int i = 0;
while (i < 5) {
i++;
if (i == 3) {
continue;
}
printf("%d ", i);
}
Sample Program
This program prints only odd numbers from 1 to 10 by skipping even numbers using continue.
C
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // Skip even numbers
}
printf("%d ", i);
}
return0;
}
OutputSuccess
Important Notes
Using continue can make loops easier to read by handling special cases early.
Be careful not to create infinite loops by skipping the code that changes the loop variable.
Summary
continue skips the rest of the current loop cycle and moves to the next.
It works inside for, while, and do-while loops.
Use it to ignore certain cases without stopping the whole loop.
Practice
(1/5)
1. What does the continue statement do inside a loop in C?
easy
A. Skips the rest of the current loop iteration and moves to the next iteration
B. Stops the entire loop immediately
C. Exits the current function
D. Restarts the program from the beginning
Solution
Step 1: Understand the role of continue
The continue statement does not stop the loop but skips the remaining code in the current iteration.
Step 2: Effect on loop execution
After continue, the loop immediately proceeds to the next iteration, ignoring any code below it in the current cycle.
Final Answer:
Skips the rest of the current loop iteration and moves to the next iteration -> Option A
Quick Check:
continue skips current iteration [OK]
Hint: Remember: continue skips current loop step, not whole loop [OK]
Common Mistakes:
Confusing continue with break
Thinking continue exits the function
Assuming continue restarts the program
2. Which of the following is the correct syntax to use continue inside a for loop in C?
easy
A. continue;
B. continue()
C. continue{}
D. continue[]
Solution
Step 1: Recall correct statement syntax
In C, continue is a statement and must end with a semicolon.
Step 2: Identify valid syntax
Only continue; is valid; parentheses, braces, or brackets are incorrect.
Final Answer:
continue; -> Option A
Quick Check:
Statement ends with semicolon [OK]
Hint: Statements end with semicolon; continue is no exception [OK]
Common Mistakes:
Adding parentheses after continue
Using braces or brackets with continue
Omitting the semicolon
3. What is the output of the following C code?
for (int i = 1; i <= 5; i++) {
if (i == 3) continue;
printf("%d ", i);
}
medium
A. 1 2 3 4 5
B. 1 2 4 5
C. 1 2 3 4
D. 2 3 4 5
Solution
Step 1: Analyze loop iterations
The loop runs i from 1 to 5. When i equals 3, the continue statement skips printing.
Step 2: Determine printed values
Values 1, 2, 4, and 5 are printed with spaces. The number 3 is skipped.
Final Answer:
1 2 4 5 -> Option B
Quick Check:
continue skips printing 3 [OK]
Hint: Skip printing when continue triggers, others print normally [OK]
Common Mistakes:
Including the skipped number in output
Confusing continue with break
Ignoring the loop condition
4. Identify the error in this code snippet using continue:
int i = 0;
while (i < 5) {
if (i == 2)
continue;
printf("%d ", i);
i++;
}
medium
A. Syntax error: continue cannot be used in while loops
B. The printf statement is unreachable
C. The loop will run infinitely because 'i' is not incremented when i == 2
D. The variable 'i' is not declared properly
Solution
Step 1: Understand loop flow with continue
When i equals 2, continue skips the rest of the loop body, so i++ is not executed.
Step 2: Consequence of skipping i++
Since i is not incremented at i == 2, the loop condition remains true forever, causing an infinite loop.
Final Answer:
The loop will run infinitely because 'i' is not incremented when i == 2 -> Option C
Quick Check:
continue skips i++ causing infinite loop [OK]
Hint: Always increment loop variable before continue to avoid infinite loops [OK]
Common Mistakes:
Thinking continue causes syntax error
Assuming printf is unreachable
Ignoring loop variable increment
5. How can you modify this code to print only odd numbers from 1 to 10 using continue?
for (int i = 1; i <= 10; i++) {
printf("%d ", i);
}
hard
A. Add if (i == 2) continue; before printf
B. Add if (i % 2 != 0) continue; before printf
C. Replace printf with if (i % 2 != 0) printf("%d ", i);
D. Add if (i % 2 == 0) continue; before printf
Solution
Step 1: Identify condition to skip even numbers
Even numbers satisfy i % 2 == 0. Using continue here skips printing even numbers.
Step 2: Place continue before printf
Adding if (i % 2 == 0) continue; before printf skips printing even numbers, so only odd numbers print.
Final Answer:
Add if (i % 2 == 0) continue; before printf -> Option D
Quick Check:
continue skips even numbers, prints odd [OK]
Hint: Skip even numbers with continue to print only odds [OK]
Common Mistakes:
Skipping odd numbers instead of even
Using continue after printf
Incorrect condition for even numbers
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.