📖 Scenario: You are organizing a small event where you want to greet each guest with a special message for each day of the event. You will use nested loops to print these greetings.
🎯 Goal: Build a program that uses nested loops to print a greeting message for each guest for each day of the event.
📋 What You'll Learn
Create an array of guest names
Create an integer variable for the number of days
Use nested for loops to print greetings for each guest for each day
Print the greeting messages in the format: "Hello, [Guest]! Welcome to day [Day]!"
💡 Why This Matters
🌍 Real World
Nested loops are useful when you need to perform repeated actions inside other repeated actions, such as scheduling, seating arrangements, or generating tables.
💼 Career
Understanding nested loops is essential for programming tasks like data processing, simulations, and building user interfaces that require multiple levels of iteration.
Progress0 / 4 steps
1
Create the guest list
Create a string array called guests with these exact names: "Alice", "Bob", "Charlie".
C Sharp (C#)
Hint
Use string[] guests = { "Alice", "Bob", "Charlie" }; to create the array.
2
Set the number of days
Create an integer variable called days and set it to 3.
C Sharp (C#)
Hint
Use int days = 3; to set the number of days.
3
Write nested loops for greetings
Use nested for loops with variables i and j to iterate over guests and days. Inside the inner loop, create a string variable message with the value: $"Hello, {guests[i]}! Welcome to day {j + 1}!".
C Sharp (C#)
Hint
Use two for loops: outer loop for guests, inner loop for days. Use string interpolation for the message.
4
Print the greeting messages
Inside the inner for loop, add a Console.WriteLine(message); statement to print each greeting message.
C Sharp (C#)
Hint
Use Console.WriteLine(message); inside the inner loop to print each message.
Practice
(1/5)
1. What happens when you use a nested loop in C#?
easy
A. Both loops run at the same time independently.
B. The outer loop runs only once and the inner loop runs multiple times.
C. The loops run only if a condition outside the loops is true.
D. The inner loop runs completely for each iteration of the outer loop.
Solution
Step 1: Understand nested loop structure
In nested loops, the outer loop controls how many times the inner loop runs fully.
Step 2: Analyze loop execution order
For each iteration of the outer loop, the inner loop runs from start to finish before the outer loop moves to the next iteration.
Final Answer:
The inner loop runs completely for each iteration of the outer loop. -> Option D
Hint: Inner loop finishes all steps per outer loop step [OK]
Common Mistakes:
Thinking both loops run simultaneously
Assuming outer loop runs only once
Confusing loop execution order
2. Which of the following is the correct syntax for a nested for loop in C#?
easy
A. for(int i = 0; i < 3; i++) { for(int j = 0; j < 2; j++) { Console.WriteLine(i + j); } }
B. for i in range(3) { for j in range(2) { Console.WriteLine(i + j); } }
C. for(int i = 0; i < 3; i++) for(int j = 0; j < 2; j++) Console.WriteLine(i + j); }
D. foreach(int i = 0; i < 3; i++) { foreach(int j = 0; j < 2; j++) { Console.WriteLine(i + j); } }
Solution
Step 1: Check C# for loop syntax
The correct for loop uses parentheses with initialization, condition, and increment separated by semicolons.
Step 2: Verify nested loop braces and statements
for(int i = 0; i < 3; i++) { for(int j = 0; j < 2; j++) { Console.WriteLine(i + j); } } correctly nests two for loops with braces and valid syntax. Other options use incorrect syntax or keywords.
Final Answer:
for(int i = 0; i < 3; i++) { for(int j = 0; j < 2; j++) { Console.WriteLine(i + j); } } -> Option A
Quick Check:
C# for loop syntax = for(int i = 0; i < 3; i++) { for(int j = 0; j < 2; j++) { Console.WriteLine(i + j); } } [OK]
Hint: Remember C# for loop uses semicolons inside parentheses [OK]
B. Missing semicolon after Console.WriteLine statement.
C. Incorrect loop condition in the outer loop.
D. Variable j is not declared.
Solution
Step 1: Check braces matching
There is an extra closing brace '}' after the inner loop which causes a syntax error.
Step 2: Verify other syntax elements
Console.WriteLine has correct syntax, loops have valid conditions, and variables are declared properly.
Final Answer:
Extra closing brace '}' after the inner loop. -> Option A
Quick Check:
Brace mismatch = syntax error [OK]
Hint: Count opening and closing braces carefully [OK]
Common Mistakes:
Ignoring extra or missing braces
Assuming missing semicolon error
Confusing variable declaration errors
5. You want to print a multiplication table from 1 to 3 using nested loops in C#. Which code correctly prints the table with rows and columns aligned?
hard
A. for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { Console.Write(i*j); } Console.WriteLine(); }
B. for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { Console.WriteLine(i*j); } }
C. for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { Console.Write($"{i*j,4}"); } Console.WriteLine(); }
D. for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { Console.WriteLine($"{i}*{j}={i*j}"); } Console.WriteLine(); }
Solution
Step 1: Understand formatting for aligned output
Using Console.Write with format specifier {value,4} aligns numbers in columns with 4 spaces width.
Step 2: Check nested loop and output structure
for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { Console.Write($"{i*j,4}"); } Console.WriteLine(); } prints products in a grid with spaces, then moves to next line after inner loop finishes, creating a table.
Final Answer:
for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 3; j++) { Console.Write($"{i*j,4}"); } Console.WriteLine(); } -> Option C