Bird
Raised Fist0
C Sharp (C#)programming~30 mins

Array iteration with for and foreach in C Sharp (C#) - Mini Project: Build & Apply

Choose your learning style10 modes available
Array iteration with for and foreach
📖 Scenario: You are helping a small shop owner who wants to list the prices of items they sell. They have a list of prices and want to see each price printed one by one.
🎯 Goal: Build a simple C# program that stores item prices in an array and then prints each price using both a for loop and a foreach loop.
📋 What You'll Learn
Create an array called prices with the exact values: 10.5, 20.0, 15.75, 30.0
Create an integer variable called length that stores the length of the prices array
Use a for loop with variable i to iterate over prices using length
Use a foreach loop with variable price to iterate over prices
Print each price inside both loops using Console.WriteLine(price)
💡 Why This Matters
🌍 Real World
Iterating over arrays is common when handling lists of data like prices, names, or scores in many programs.
💼 Career
Knowing how to use <code>for</code> and <code>foreach</code> loops to process arrays is a basic skill needed for software development jobs.
Progress0 / 4 steps
1
Create the array of prices
Create an array called prices with these exact values: 10.5, 20.0, 15.75, 30.0.
C Sharp (C#)
Hint

Use double[] prices = {10.5, 20.0, 15.75, 30.0}; to create the array.

2
Create a variable for the array length
Create an integer variable called length that stores the length of the prices array using prices.Length.
C Sharp (C#)
Hint

Use int length = prices.Length; to get the number of items in the array.

3
Use a for loop to print each price
Use a for loop with variable i from 0 to length - 1 to print each price from the prices array using Console.WriteLine(prices[i]).
C Sharp (C#)
Hint

Use for (int i = 0; i < length; i++) and print prices[i] inside the loop.

4
Use a foreach loop to print each price
Use a foreach loop with variable price to iterate over prices and print each price using Console.WriteLine(price).
C Sharp (C#)
Hint

Use foreach (double price in prices) and print price inside the loop.

Practice

(1/5)
1. Which loop is best when you want to access each element in an array without needing the index in C#?
easy
A. foreach loop
B. for loop
C. while loop
D. do-while loop

Solution

  1. Step 1: Understand loop purpose

    foreach is designed to iterate over each element directly without needing the index.
  2. Step 2: Compare with other loops

    for requires index management, while and do-while are less direct for arrays.
  3. Final Answer:

    foreach loop -> Option A
  4. Quick Check:

    Direct element access = foreach [OK]
Hint: Use foreach when index is not needed for array items [OK]
Common Mistakes:
  • Choosing for loop when index is not required
  • Confusing while loops with foreach
  • Thinking foreach can modify array size
2. Which of the following is the correct syntax for iterating over an array named numbers using a for loop in C#?
easy
A. for (int i = 0; i < numbers.Count; i++) { Console.WriteLine(numbers[i]); }
B. for (int i = 0; i < numbers.Length; i++) { Console.WriteLine(numbers[i]); }
C. for (int i = 0; i <= numbers.Length; i++) { Console.WriteLine(numbers[i]); }
D. for (int i = 1; i <= numbers.Length; i++) { Console.WriteLine(numbers[i]); }

Solution

  1. Step 1: Check loop start and end conditions

    Index starts at 0 and runs while less than numbers.Length (array length).
  2. Step 2: Validate index usage

    Accessing numbers[i] is correct; using Count is invalid for arrays.
  3. Final Answer:

    for (int i = 0; i < numbers.Length; i++) { Console.WriteLine(numbers[i]); } -> Option B
  4. Quick Check:

    Index 0 to Length-1 = correct for loop [OK]
Hint: Use i < array.Length, not <= or Count for arrays [OK]
Common Mistakes:
  • Using i <= numbers.Length causing out-of-range error
  • Starting index at 1 instead of 0
  • Using Count property on arrays
3. What will be the output of the following C# code?
int[] nums = {1, 2, 3};
int sum = 0;
foreach (int n in nums) {
  sum += n;
}
Console.WriteLine(sum);
medium
A. Error
B. 123
C. 0
D. 6

Solution

  1. Step 1: Understand foreach iteration

    The loop adds each element (1, 2, 3) to sum one by one.
  2. Step 2: Calculate sum

    sum = 0 + 1 + 2 + 3 = 6
  3. Final Answer:

    6 -> Option D
  4. Quick Check:

    Sum of array elements = 6 [OK]
Hint: Sum elements by adding each in foreach loop [OK]
Common Mistakes:
  • Concatenating numbers instead of adding
  • Forgetting to initialize sum to 0
  • Using for loop incorrectly causing index errors
4. Identify the error in this C# code snippet:
int[] arr = {10, 20, 30};
for (int i = 0; i <= arr.Length; i++) {
  Console.WriteLine(arr[i]);
}
medium
A. The loop condition should be i < arr.Length, not i <= arr.Length
B. The array declaration is incorrect
C. Console.WriteLine cannot print array elements
D. The loop variable i should start at 1

Solution

  1. Step 1: Check loop boundary

    Using i <= arr.Length causes index out of range because last valid index is Length - 1.
  2. Step 2: Correct loop condition

    Change condition to i < arr.Length to avoid runtime error.
  3. Final Answer:

    The loop condition should be i < arr.Length, not i <= arr.Length -> Option A
  4. Quick Check:

    Index must be less than Length [OK]
Hint: Use i < array.Length to avoid out-of-range errors [OK]
Common Mistakes:
  • Using <= instead of < in loop condition
  • Starting index at 1 instead of 0
  • Misunderstanding array length vs last index
5. You have an array string[] fruits = {"apple", "banana", "cherry"};. You want to create a new array with all fruit names in uppercase using a for loop. Which code correctly does this?
hard
A. string[] upperFruits = new string[fruits.Length]; for (int i = 1; i <= fruits.Length; i++) { upperFruits[i] = fruits[i].ToUpper(); }
B. string[] upperFruits = new string[fruits.Length]; foreach (string f in fruits) { upperFruits[i] = f.ToUpper(); }
C. string[] upperFruits = new string[fruits.Length]; for (int i = 0; i < fruits.Length; i++) { upperFruits[i] = fruits[i].ToUpper(); }
D. string[] upperFruits = new string[fruits.Length]; for (int i = 0; i < fruits.Length; i++) { upperFruits[i] = fruits.ToUpper(); }

Solution

  1. Step 1: Initialize new array with same length

    We create upperFruits with the same size as fruits.
  2. Step 2: Use for loop with correct index and method

    Loop from 0 to Length-1, assign fruits[i].ToUpper() to upperFruits[i].
  3. Final Answer:

    string[] upperFruits = new string[fruits.Length]; for (int i = 0; i < fruits.Length; i++) { upperFruits[i] = fruits[i].ToUpper(); } -> Option C
  4. Quick Check:

    Use for loop with index and ToUpper() per element [OK]
Hint: Use for loop with index to assign transformed elements [OK]
Common Mistakes:
  • Using foreach without index to assign array elements
  • Starting loop at 1 or using <= causing errors
  • Calling ToUpper() on array instead of string element
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