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

Array iteration with for and foreach in C Sharp (C#) - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to print each number in the array using a for loop.

C Sharp (C#)
int[] numbers = {1, 2, 3, 4, 5};
for (int i = 0; i < numbers.Length; i++)
{
    Console.WriteLine(numbers[i]);
}
Drag options to blanks, or click blank then click option'
A<
B>=
C<=
D>
Attempts:
3 left
💡 Hint
Common Mistakes
Using <= causes an IndexOutOfRangeException.
Using > or >= will not enter the loop correctly.
2fill in blank
medium

Complete the code to print each word in the array using a foreach loop.

C Sharp (C#)
string[] words = {"apple", "banana", "cherry"};
foreach ([1] word in words)
{
    Console.WriteLine(word);
}
Drag options to blanks, or click blank then click option'
Achar
Bint
Cstring
Dbool
Attempts:
3 left
💡 Hint
Common Mistakes
Using int or char causes a type mismatch error.
Using bool is incorrect because the array does not contain boolean values.
3fill in blank
hard

Fix the error in the for loop condition to avoid runtime errors.

C Sharp (C#)
double[] values = {2.5, 3.6, 4.7};
for (int index = 0; index < values.Length; index++)
{
    Console.WriteLine(values[index]);
}
Drag options to blanks, or click blank then click option'
A<=
B<
C>
D>=
Attempts:
3 left
💡 Hint
Common Mistakes
Using <= causes the loop to run one time too many.
Using > or >= will not enter the loop properly.
4fill in blank
hard

Fill both blanks to create a dictionary with word lengths for words longer than 3 characters.

C Sharp (C#)
string[] words = {"cat", "elephant", "dog", "giraffe"};
var lengths = new Dictionary<string, int>();
foreach (var word in words)
{
    if (word.Length > 3)
    {
        lengths[word] = word.Length;
    }
}
Drag options to blanks, or click blank then click option'
ALength
BCount
CLength()
DCount()
Attempts:
3 left
💡 Hint
Common Mistakes
Using Count or Count() causes errors because strings do not have these members.
Using Length() with parentheses causes a syntax error.
5fill in blank
hard

Fill all three blanks to create a dictionary with uppercase words as keys and their lengths as values for words longer than 4 characters.

C Sharp (C#)
string[] words = {"tree", "mountain", "river", "sky"};
var result = new Dictionary<string, int>();
foreach (var word in words)
{
    if (word.Length > 4)
    {
        result[word.ToUpper()] = word.Length;
    }
}
Drag options to blanks, or click blank then click option'
ALength
CToUpper
DToLower
Attempts:
3 left
💡 Hint
Common Mistakes
Using Length() with parentheses causes errors.
Using ToLower() instead of ToUpper() changes the case incorrectly.

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