Bird
Raised Fist0
DSA C#programming~10 mins

Array Traversal Patterns in DSA C# - Interactive Practice

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

Complete the code to print all elements of the array using a for loop.

DSA C#
int[] numbers = {1, 2, 3, 4, 5};
for (int i = 0; i [1] 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.
2fill in blank
medium

Complete the code to traverse the array backwards using a for loop.

DSA C#
int[] values = {10, 20, 30, 40};
for (int i = values.Length - 1; i [1] 0; i--)
{
    Console.WriteLine(values[i]);
}
Drag options to blanks, or click blank then click option'
A>=
B>
C<
D<=
Attempts:
3 left
💡 Hint
Common Mistakes
Using > will skip the first element at index 0.
Using < or <= will cause the loop to not run.
3fill in blank
hard

Fix the error in the code to correctly print every second element starting from the first.

DSA C#
int[] data = {5, 10, 15, 20, 25};
for (int i = 0; i [1] data.Length; i += 2)
{
    Console.WriteLine(data[i]);
}
Drag options to blanks, or click blank then click option'
A<
B<=
C>
D>=
Attempts:
3 left
💡 Hint
Common Mistakes
Using <= causes an exception when i equals data.Length.
Using > or >= will not run the loop.
4fill in blank
hard

Fill both blanks to create a loop that prints elements at odd indices only.

DSA C#
int[] arr = {2, 4, 6, 8, 10, 12};
for (int i = [1]; i [2] arr.Length; i += 2)
{
    Console.WriteLine(arr[i]);
}
Drag options to blanks, or click blank then click option'
A1
B0
C<
D<=
Attempts:
3 left
💡 Hint
Common Mistakes
Starting at 0 prints even indices.
Using <= causes IndexOutOfRangeException.
5fill in blank
hard

Fill all three blanks to create a loop that sums elements at even indices.

DSA C#
int[] nums = {3, 7, 1, 9, 5};
int sum = 0;
for (int i = [1]; i [2] nums.Length; i [3] 2)
{
    sum += nums[i];
}
Console.WriteLine(sum);
Drag options to blanks, or click blank then click option'
A0
B<
C+=
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Starting at 1 sums odd indices.
Using <= causes out of range error.
Using i++ increments by 1, not 2.

Practice

(1/5)
1. What does the following C# code do?
int[] arr = {1, 2, 3, 4};
for (int i = 0; i < arr.Length; i++) {
Console.Write(arr[i] + " ");
}
easy
A. Prints all elements of the array from start to end
B. Prints all elements of the array in reverse order
C. Prints only the first element of the array
D. Causes a runtime error due to wrong loop condition

Solution

  1. Step 1: Understand the loop range

    The loop starts at 0 and runs while i is less than arr.Length (4), so i goes 0,1,2,3.
  2. Step 2: Print elements in order

    Each iteration prints arr[i], so it prints 1 2 3 4 in order.
  3. Final Answer:

    Prints all elements of the array from start to end -> Option A
  4. Quick Check:

    Loop from 0 to length-1 prints all elements [OK]
Hint: Loop from 0 to length-1 prints all elements in order [OK]
Common Mistakes:
  • Thinking loop prints in reverse
  • Confusing loop condition with <= instead of <
  • Assuming only first element prints
2. Which of the following is the correct syntax to traverse an array arr in C# using a foreach loop?
easy
A. foreach (int i in arr) { Console.Write(i); }
B. foreach (arr in int i) { Console.Write(i); }
C. foreach (int arr in i) { Console.Write(i); }
D. foreach (int i; arr) { Console.Write(i); }

Solution

  1. Step 1: Recall foreach syntax

    The correct syntax is: foreach (type variable in collection) { ... }
  2. Step 2: Match syntax to options

    foreach (int i in arr) { Console.Write(i); } matches correct syntax: foreach (int i in arr) { Console.Write(i); }
  3. Final Answer:

    foreach (int i in arr) { Console.Write(i); } -> Option A
  4. Quick Check:

    foreach loops use 'variable in collection' syntax [OK]
Hint: Remember foreach uses 'variable in collection' syntax [OK]
Common Mistakes:
  • Swapping variable and collection order
  • Using semicolon instead of 'in'
  • Incorrect variable declaration inside foreach
3. What is the output of the following code?
int[] arr = {10, 20, 30, 40};
for (int i = arr.Length - 1; i >= 0; i--) {
  Console.Write(arr[i] + " ");
}
medium
A. 40 30 20
B. 10 20 30 40
C. 40 30 20 10
D. Runtime error due to loop condition

Solution

  1. Step 1: Analyze loop start and end

    Loop starts at arr.Length - 1 = 3 and runs while i >= 0, decrementing i each time.
  2. Step 2: Trace printed elements

    Prints arr[3]=40, arr[2]=30, arr[1]=20, arr[0]=10 in that order.
  3. Final Answer:

    40 30 20 10 -> Option C
  4. Quick Check:

    Loop from end to start prints reversed array [OK]
Hint: Loop from length-1 down to 0 prints array in reverse [OK]
Common Mistakes:
  • Confusing loop direction and printing forward
  • Off-by-one errors in loop condition
  • Assuming runtime error due to negative index
4. Find the error in this array traversal code:
int[] arr = {5, 10, 15};
for (int i = 0; i <= arr.Length; i++) {
  Console.Write(arr[i] + " ");
}
medium
A. Array declaration is incorrect
B. Variable i should start from 1, not 0
C. Console.Write should be Console.WriteLine
D. Loop condition should be i < arr.Length, not <= arr.Length

Solution

  1. Step 1: Check loop condition

    Loop runs while i <= arr.Length, but arr indices go from 0 to arr.Length - 1.
  2. Step 2: Identify out-of-range access

    When i == arr.Length (3), arr[3] is accessed causing runtime error (IndexOutOfRangeException).
  3. Final Answer:

    Loop condition should be i < arr.Length, not <= arr.Length -> Option D
  4. Quick Check:

    Array indices go 0 to length-1, use < not <= [OK]
Hint: Use i < arr.Length to avoid out-of-range errors [OK]
Common Mistakes:
  • Using <= instead of < in loop condition
  • Starting loop at 1 instead of 0
  • Confusing Write and WriteLine methods
5. Given an integer array arr, which code snippet correctly prints only the even-indexed elements (0, 2, 4, ...) of the array?
hard
A. foreach (int i in arr) { if (i % 2 == 0) Console.Write(i + " "); }
B. for (int i = 0; i < arr.Length; i += 2) { Console.Write(arr[i] + " "); }
C. for (int i = 1; i < arr.Length; i += 2) { Console.Write(arr[i] + " "); }
D. for (int i = 0; i < arr.Length; i++) { if (arr[i] % 2 == 0) Console.Write(arr[i] + " "); }

Solution

  1. Step 1: Understand requirement

    We want to print elements at even indexes: 0, 2, 4, ...
  2. Step 2: Analyze options

    for (int i = 0; i < arr.Length; i += 2) { Console.Write(arr[i] + " "); } increments i by 2 starting at 0, so it accesses even indexes correctly.
    for (int i = 1; i < arr.Length; i += 2) { Console.Write(arr[i] + " "); } accesses odd indexes.
    foreach (int i in arr) { if (i % 2 == 0) Console.Write(i + " "); } checks element values for evenness, not indexes.
    for (int i = 0; i < arr.Length; i++) { if (arr[i] % 2 == 0) Console.Write(arr[i] + " "); } prints elements with even values, not indexes.
  3. Final Answer:

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

    Increment index by 2 from 0 to get even indexes [OK]
Hint: Increment loop index by 2 starting at 0 for even indexes [OK]
Common Mistakes:
  • Confusing even index with even element value
  • Starting loop at 1 for even indexes
  • Using foreach without index tracking
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