📖 Scenario: Imagine you are managing a small store and want to count how many customers enter each day for a week. You will use a loop to simulate counting customers day by day.
🎯 Goal: Build a C program that uses a for loop to count customers entering the store for 7 days and prints the total number of customers at the end.
📋 What You'll Learn
Create an integer variable total_customers initialized to 0
Create a for loop with an integer variable day that runs from 1 to 7
Inside the loop, add the number of customers for each day to total_customers
Print the total number of customers after the loop ends
💡 Why This Matters
🌍 Real World
Counting totals over time is common in stores, websites, or any place where you track daily activity.
💼 Career
Understanding loop execution flow is essential for programming tasks like data processing, automation, and simulations.
Progress0 / 4 steps
1
Create the initial variable to hold total customers
Create an integer variable called total_customers and set it to 0.
C
Hint
Use int total_customers = 0; inside the main function.
2
Set up the loop to count days
Add a for loop with an integer variable day that runs from 1 to 7 inclusive.
C
Hint
Use for (int day = 1; day <= 7; day++) { } to loop through days.
3
Add customers each day inside the loop
Inside the for loop, add 5 customers to total_customers each day using total_customers += 5;.
C
Hint
Use total_customers += 5; inside the loop to add customers.
4
Print the total number of customers
After the for loop, print the value of total_customers using printf with the message: Total customers in 7 days: %d\n.
C
Hint
Use printf("Total customers in 7 days: %d\n", total_customers); after the loop.
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
Step 1: Understand loop types
The do-while loop checks its condition after running the loop body once.
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.
Final Answer:
do-while loop -> Option A
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
Step 1: Check for loop syntax
The correct syntax is for (initialization; condition; increment). for (int i = 0; i < 5; i++) {} matches this.
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.
Final Answer:
for (int i = 0; i < 5; i++) {} -> Option C
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
Step 1: Analyze loop condition and variable
Variable i starts at 0 and increments by 1 each loop while i < 3.
Step 2: Trace output values
Loop runs for i = 0, 1, 2 printing each value followed by a space.
Final Answer:
0 1 2 -> Option A
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
Step 1: Check loop body for changes to i
The variable i is never incremented inside the loop, so i stays 0 forever.
Step 2: Understand loop consequence
Without increment, the condition i < 5 is always true, causing an infinite loop.
Final Answer:
Missing increment of i inside the loop -> Option B
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
Step 1: Understand outer loop iterations
The outer loop runs i from 1 to 3, inclusive, so 3 times.
Step 2: Trace inner loop for each i
For each i, inner loop runs j from 1 to i, printing j values without spaces.
Step 3: Combine outputs
Lines printed are: i=1: "1" i=2: "12" i=3: "123" Each followed by newline.
Final Answer:
1
12
123
-> Option D
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 unknownstrongwhile earning +1 Grip toward your certificate.