Array traversal means visiting each element of an array one by one, usually using a loop, to read or modify its values.
Click to reveal answer
beginner
Which loop is commonly used for array traversal in C?
The for loop is commonly used because it allows easy control of the index from 0 to the array size minus one.
Click to reveal answer
beginner
What is the starting index of an array in C?
The starting index of an array in C is 0, meaning the first element is accessed with index 0.
Click to reveal answer
beginner
Show a simple C code snippet to print all elements of an integer array named arr of size n.
for (int i = 0; i < n; i++) {
printf("%d\n", arr[i]);
}
Click to reveal answer
beginner
Why is it important to use the correct array size when traversing an array?
Using the correct size prevents accessing memory outside the array, which can cause errors or crashes.
Click to reveal answer
What is the first index used when traversing an array in C?
A-1
B1
C0
DArray size
✗ Incorrect
Arrays in C start at index 0, so traversal begins at 0.
Which loop is best suited for traversing an array when the size is known?
Afor loop
Bdo-while loop
Cwhile loop
Dswitch statement
✗ Incorrect
The for loop is ideal for known sizes because it controls the index easily.
What happens if you traverse beyond the array size in C?
AUndefined behavior, possible crash or wrong data
BArray automatically resizes
CCompiler error
DProgram safely ignores extra elements
✗ Incorrect
Accessing outside array bounds causes undefined behavior and can crash the program.
How do you access the third element of an array named arr?
Aarr[3]
Barr[2]
Carr[1]
Darr[0]
✗ Incorrect
Since indexing starts at 0, the third element is at index 2.
Which of these is a correct way to traverse an array of size n?
Afor (int i = n; i > 0; i--)
Bfor (int i = 1; i <= n; i++)
Cfor (int i = 0; i <= n; i++)
Dfor (int i = 0; i < n; i++)
✗ Incorrect
Looping from 0 to less than n covers all valid indices.
Explain how to traverse an array in C and why the starting index is important.
Think about how arrays are indexed and how loops help visit each element.
You got /3 concepts.
Describe what could happen if you try to access an array element outside its size during traversal.
Consider what happens when you read memory not allocated for the array.
You got /3 concepts.
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
Step 1: Understand the term 'array traversal'
Array traversal means going through each element in the array in order.
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.
Final Answer:
Visiting each element of the array one by one -> Option C
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
Step 1: Understand array indexing in C
Arrays start at index 0 and go up to n-1 for size n.
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.
Final Answer:
for(int i = 0; i < n; i++) -> Option A
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
Step 1: Understand the array elements
The array contains 5, 10, and 15 in order at indices 0, 1, and 2.
Step 2: Trace the loop output
The loop prints elements from index 0 to 2 in order, so output is "5 10 15 "
Final Answer:
5 10 15 -> Option D
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
Step 1: Check loop condition
The loop runs while i <= 5, so i goes from 0 to 5 inclusive (6 iterations).
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.
Final Answer:
Loop condition should be i < 5 to avoid out-of-bounds access -> Option A
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
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.
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.
Final Answer:
int sum = 0;
for(int i = 0; i < n; i++) {
sum += arr[i];
} -> Option B
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 unknownstrongwhile earning +1 Grip toward your certificate.