Bird
Raised Fist0
Cprogramming~10 mins

Loop execution flow - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Loop execution flow
Initialize loop variable
↓
Check loop condition
No→Exit loop
Yes↓
Execute loop body
↓
Update loop variable
↩Back to Check loop condition
This flow shows how a loop starts by setting a variable, checks if it should continue, runs the loop body if yes, updates the variable, and repeats until the condition is false.
Execution Sample
C
int i = 0;
while (i < 3) {
    printf("%d\n", i);
    i++;
}
This code prints numbers 0, 1, and 2 by looping while i is less than 3.
Execution Table
Stepi valueCondition (i < 3)Condition ResultActionOutput
100 < 3TruePrint 0, i = i + 10
211 < 3TruePrint 1, i = i + 11
322 < 3TruePrint 2, i = i + 12
433 < 3FalseExit loop
💡 i reaches 3, condition 3 < 3 is False, loop ends
Variable Tracker
VariableStartAfter 1After 2After 3Final
i01233
Key Moments - 2 Insights
Why does the loop stop when i is 3 even though 3 is a number?
The loop condition checks if i is less than 3. When i equals 3, the condition 3 < 3 is false, so the loop stops as shown in step 4 of the execution table.
When is the value of i updated during the loop?
i is updated after printing in each loop iteration, as shown in the 'Action' column of the execution table where i = i + 1 happens after printing.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, what is the value of i at step 2?
A1
B0
C2
D3
💡 Hint
Check the 'i value' column in row for step 2 in the execution table.
At which step does the loop condition become false?
AStep 3
BStep 4
CStep 2
DStep 1
💡 Hint
Look at the 'Condition Result' column and find where it says False.
If we change the loop condition to i <= 3, how many times will the loop run?
A2 times
B3 times
C4 times
DInfinite times
💡 Hint
Consider that i starts at 0 and runs while i is less than or equal to 3.
Concept Snapshot
Loop execution flow in C:
1. Initialize loop variable.
2. Check condition before each iteration.
3. If true, run loop body.
4. Update variable.
5. Repeat until condition is false.
Example: while(i < 3) { ... } runs 3 times for i=0,1,2.
Full Transcript
This visual execution shows how a loop in C works step-by-step. First, the loop variable i is set to 0. Then the loop checks if i is less than 3. If yes, it prints i and increases i by 1. This repeats until i reaches 3, when the condition becomes false and the loop stops. The execution table tracks each step, showing i's value, the condition check, and the output. Key points include understanding when the loop stops and when the variable updates. The quiz tests understanding of these steps.

Practice

(1/5)
1. Which loop in C always executes its body at least once, regardless of the condition?
easy
A. do-while loop
B. for loop
C. while loop
D. if statement

Solution

  1. Step 1: Understand loop types

    The do-while loop checks its condition after running the loop body once.
  2. Step 2: Compare with other loops

    The for and while loops check the condition before running the body, so they may not run at all.
  3. Final Answer:

    do-while loop -> Option A
  4. Quick Check:

    do-while runs body once before condition check [OK]
Hint: do-while runs body first, then checks condition [OK]
Common Mistakes:
  • Thinking for or while loops always run once
  • Confusing if statement with loops
  • Assuming do-while checks condition first
2. Which of the following is the correct syntax for a for loop in C that counts from 0 to 4?
easy
A. for (i < 5; i = 0; i++) {}
B. for i = 0 to 4 {}
C. for (int i = 0; i < 5; i++) {}
D. for (int i = 0; i <= 5; i++) {}

Solution

  1. Step 1: Check for loop syntax

    The correct syntax is for (initialization; condition; increment). for (int i = 0; i < 5; i++) {} matches this.
  2. Step 2: Validate loop range

    for (int i = 0; i < 5; i++) {} counts i from 0 up to but not including 5, so 0 to 4.
  3. Final Answer:

    for (int i = 0; i < 5; i++) {} -> Option C
  4. Quick Check:

    Standard for loop syntax with i from 0 to 4 [OK]
Hint: for loops use (init; condition; increment) syntax [OK]
Common Mistakes:
  • Using 'for i = 0 to 4' which is not C syntax
  • Swapping condition and initialization
  • Using <= 5 to count 0 to 4 (includes 5)
3. What is the output of this C code?
int i = 0;
while (i < 3) {
    printf("%d ", i);
    i++;
}
medium
A. 0 1 2
B. 1 2 3
C. 0 1 2 3
D. 3 2 1 0

Solution

  1. Step 1: Analyze loop condition and variable

    Variable i starts at 0 and increments by 1 each loop while i < 3.
  2. Step 2: Trace output values

    Loop runs for i = 0, 1, 2 printing each value followed by a space.
  3. Final Answer:

    0 1 2 -> Option A
  4. Quick Check:

    while loop prints 0,1,2 then stops [OK]
Hint: Check loop condition carefully to count printed values [OK]
Common Mistakes:
  • Including 3 in output by mistake
  • Starting count from 1 instead of 0
  • Printing after increment instead of before
4. Identify the error in this loop code:
int i = 0;
while (i < 5) {
    printf("%d ", i);
}
medium
A. Incorrect printf format specifier
B. Missing increment of i inside the loop
C. Condition should be i <= 5
D. Variable i should be declared inside the loop

Solution

  1. Step 1: Check loop body for changes to i

    The variable i is never incremented inside the loop, so i stays 0 forever.
  2. Step 2: Understand loop consequence

    Without increment, the condition i < 5 is always true, causing an infinite loop.
  3. Final Answer:

    Missing increment of i inside the loop -> Option B
  4. Quick Check:

    Infinite loop due to no i++ [OK]
Hint: Always update loop variable to avoid infinite loops [OK]
Common Mistakes:
  • Thinking condition is wrong instead of missing increment
  • Assuming printf format is incorrect
  • Declaring i inside loop is optional, not error
5. Consider this nested loop:
for (int i = 1; i <= 3; i++) {
    for (int j = 1; j <= i; j++) {
        printf("%d", j);
    }
    printf("\n");
}

What is the output?
hard
A. 1 22 333
B. 1 2 3
C. 123 123 123
D. 1 12 123

Solution

  1. Step 1: Understand outer loop iterations

    The outer loop runs i from 1 to 3, inclusive, so 3 times.
  2. Step 2: Trace inner loop for each i

    For each i, inner loop runs j from 1 to i, printing j values without spaces.
  3. Step 3: Combine outputs

    Lines printed are:
    i=1: "1"
    i=2: "12"
    i=3: "123"
    Each followed by newline.
  4. Final Answer:

    1 12 123 -> Option D
  5. Quick Check:

    Nested loops print increasing sequences per line [OK]
Hint: Inner loop runs up to outer loop counter each time [OK]
Common Mistakes:
  • Confusing inner loop range with outer loop
  • Printing j values incorrectly
  • Missing newline after each inner loop
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard