Bird
Raised Fist0
Cprogramming~15 mins

Array traversal in C - Mini Project: Build & Apply

Choose your learning style10 modes available
Array traversal
📖 Scenario: You are working with a list of daily temperatures recorded over a week. You want to look at each temperature one by one to understand the weather pattern.
🎯 Goal: Build a simple C program that stores temperatures in an array and then goes through each temperature to print it out.
📋 What You'll Learn
Create an integer array named temperatures with exactly 7 values: 23, 25, 22, 20, 24, 26, 21
Create an integer variable days and set it to 7
Use a for loop with the variable i to traverse the temperatures array from index 0 to days - 1
Print each temperature value inside the loop using printf
💡 Why This Matters
🌍 Real World
Arrays are used to store lists of data like temperatures, scores, or names so you can easily access each item one by one.
💼 Career
Understanding how to traverse arrays is a basic skill needed in many programming jobs, including software development, data analysis, and embedded systems.
Progress0 / 4 steps
1
Create the temperatures array
Create an integer array called temperatures with these exact values: 23, 25, 22, 20, 24, 26, 21.
C
Hint

Use curly braces {} to list the values inside the array.

2
Set the number of days
Create an integer variable called days and set it to 7.
C
Hint

Just create a simple integer variable and assign the number 7.

3
Traverse the array with a for loop
Use a for loop with the variable i to go from 0 to days - 1 and access each element of temperatures.
C
Hint

Start i at 0 and continue while it is less than days.

4
Print each temperature
Inside the for loop, use printf to print each temperature from the temperatures array followed by a newline.
C
Hint

Use printf("%d\n", temperatures[i]); to print each temperature on its own line.

Practice

(1/5)
1. What does array traversal mean in C programming?
easy
A. Adding elements to the array
B. Deleting elements from the array
C. Visiting each element of the array one by one
D. Sorting the array elements

Solution

  1. Step 1: Understand the term 'array traversal'

    Array traversal means going through each element in the array in order.
  2. Step 2: Match the definition with options

    Only Visiting each element of the array one by one describes visiting each element one by one, which is the correct meaning.
  3. Final Answer:

    Visiting each element of the array one by one -> Option C
  4. Quick Check:

    Array traversal = visiting elements [OK]
Hint: Traversal means visiting all elements one by one [OK]
Common Mistakes:
  • Confusing traversal with adding or deleting elements
  • Thinking traversal means sorting
  • Assuming traversal skips elements
2. Which of the following is the correct syntax to traverse an array arr of size n in C?
easy
A. for(int i = 0; i < n; i++)
B. for(int i = 1; i <= n; i++)
C. for(int i = 1; i < n; i++)
D. for(int i = 0; i <= n; i++)

Solution

  1. Step 1: Understand array indexing in C

    Arrays start at index 0 and go up to n-1 for size n.
  2. Step 2: Check loop conditions

    The loop must start at 0 and run while i is less than n (not equal), so for(int i = 0; i < n; i++) is correct.
  3. Final Answer:

    for(int i = 0; i < n; i++) -> Option A
  4. Quick Check:

    Loop from 0 to n-1 = correct traversal [OK]
Hint: Loop from 0 to less than n for array traversal [OK]
Common Mistakes:
  • Using <= n causes out-of-bounds error
  • Starting loop at 1 misses first element
  • Using wrong loop condition
3. What will be the output of the following code?
int arr[] = {5, 10, 15};
for(int i = 0; i < 3; i++) {
    printf("%d ", arr[i]);
}
medium
A. 5 10 15 0
B. 15 10 5
C. 10 15 5
D. 5 10 15

Solution

  1. Step 1: Understand the array elements

    The array contains 5, 10, and 15 in order at indices 0, 1, and 2.
  2. Step 2: Trace the loop output

    The loop prints elements from index 0 to 2 in order, so output is "5 10 15 "
  3. Final Answer:

    5 10 15 -> Option D
  4. Quick Check:

    Print elements in order = 5 10 15 [OK]
Hint: Prints elements in order from index 0 to n-1 [OK]
Common Mistakes:
  • Reversing order of output
  • Printing extra zero
  • Starting loop at wrong index
4. Identify the error in the following code snippet for traversing an array arr of size 5:
for(int i = 0; i <= 5; i++) {
    printf("%d ", arr[i]);
}
medium
A. Loop condition should be i < 5 to avoid out-of-bounds access
B. Loop variable should start from 1 instead of 0
C. Array size should be 6 instead of 5
D. No error, code is correct

Solution

  1. Step 1: Check loop condition

    The loop runs while i <= 5, so i goes from 0 to 5 inclusive (6 iterations).
  2. Step 2: Analyze array indexing

    Array indices go from 0 to 4 for size 5. Accessing arr[5] is out-of-bounds and causes error.
  3. Final Answer:

    Loop condition should be i < 5 to avoid out-of-bounds access -> Option A
  4. Quick Check:

    Use i < size to avoid errors [OK]
Hint: Use i < size, not i <= size, to avoid out-of-bounds [OK]
Common Mistakes:
  • Using <= instead of <
  • Starting loop at 1
  • Ignoring array size limits
5. Given an integer array arr of size n, write a code snippet to find the sum of all elements using array traversal. Which of the following is correct?
hard
A. int sum = 0; for(int i = 1; i < n; i++) { sum += arr[i]; }
B. int sum = 0; for(int i = 0; i < n; i++) { sum += arr[i]; }
C. int sum = 0; for(int i = 0; i <= n; i++) { sum += arr[i]; }
D. int sum = 0; for(int i = n - 1; i >= 0; i--) { sum += arr[i]; }

Solution

  1. Step 1: Understand array indexing and loop range

    Array indices go from 0 to n-1, so loop must run i from 0 to less than n.
  2. Step 2: Check each option for correctness

    int sum = 0; for(int i = 0; i <= n; i++) { sum += arr[i]; } uses i <= n, which accesses arr[n] (out-of-bounds). int sum = 0; for(int i = 1; i < n; i++) { sum += arr[i]; } starts at 1, missing arr[0]. int sum = 0; for(int i = n - 1; i >= 0; i--) { sum += arr[i]; } correctly sums all elements in reverse order, but the question asks for traversal in forward order. int sum = 0; for(int i = 0; i < n; i++) { sum += arr[i]; } correctly sums all elements from 0 to n-1 in forward order.
  3. Final Answer:

    int sum = 0; for(int i = 0; i < n; i++) { sum += arr[i]; } -> Option B
  4. Quick Check:

    Loop from 0 to n-1 sums all elements [OK]
Hint: Sum elements by looping i from 0 to less than n [OK]
Common Mistakes:
  • Using i <= n causing out-of-bounds
  • Starting loop at 1 missing first element
  • Looping backwards with wrong indices
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