Bird
Raised Fist0
Cprogramming~10 mins

One-dimensional arrays in 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 declare an integer array named numbers with 5 elements.

C
int [1][5];
Drag options to blanks, or click blank then click option'
Anumbers
Bnum
Carray
Dlist
Attempts:
3 left
💡 Hint
Common Mistakes
Using a variable name different from 'numbers'.
Forgetting the array size in the declaration.
2fill in blank
medium

Complete the code to assign the value 10 to the third element of the array numbers.

C
numbers[[1]] = 10;
Drag options to blanks, or click blank then click option'
A1
B2
C3
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using 3 as the index which is actually the fourth element.
Using 1 which is the second element.
3fill in blank
hard

Fix the error in the code to correctly print the first element of the array numbers.

C
printf("%d", numbers[1]);
Drag options to blanks, or click blank then click option'
A[1]
B(0)
C[0]
D(1)
Attempts:
3 left
💡 Hint
Common Mistakes
Using parentheses instead of square brackets.
Using index 1 instead of 0.
4fill in blank
hard

Fill both blanks to create a loop that prints all elements of the array numbers of size 5.

C
for(int [1] = 0; [2] < 5; [1]++) {
    printf("%d\n", numbers[[1]]);
}
Drag options to blanks, or click blank then click option'
Ai
Bj
Ccount
Dindex
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names in the loop parts.
Using a variable name not matching the one in the printf statement.
5fill in blank
hard

Fill all three blanks to declare, initialize, and print the first element of an integer array arr with values 1, 2, 3.

C
int [1][] = [2];
printf("%d", [3][0]);
Drag options to blanks, or click blank then click option'
Aarr
B{1, 2, 3}
Cnumbers
D{3, 2, 1}
Attempts:
3 left
💡 Hint
Common Mistakes
Using different names for the array in declaration and print.
Incorrect array initialization syntax.

Practice

(1/5)
1. What is the starting index of a one-dimensional array in C?
easy
A. 0
B. 1
C. -1
D. Depends on the array size

Solution

  1. Step 1: Understand array indexing in C

    In C, arrays always start indexing from 0, meaning the first element is at index 0.
  2. Step 2: Confirm the starting index

    This is a fixed rule in C and does not depend on array size or other factors.
  3. Final Answer:

    0 -> Option A
  4. Quick Check:

    Array indexing starts at 0 [OK]
Hint: Remember: C arrays always start at zero index [OK]
Common Mistakes:
  • Thinking arrays start at 1 like in some other languages
  • Assuming negative indexes are valid
  • Believing index depends on array size
2. Which of the following is the correct way to declare an integer array of size 5 in C?
easy
A. int arr = 5;
B. int arr();
C. array int arr[5];
D. int arr[5];

Solution

  1. Step 1: Recall C array declaration syntax

    In C, arrays are declared by specifying the type, name, and size in square brackets, like int arr[5];
  2. Step 2: Check each option

    int arr[5]; matches the correct syntax. int arr(); uses parentheses which is for functions. int arr = 5; assigns a single int, not an array. array int arr[5]; uses invalid keyword 'array'.
  3. Final Answer:

    int arr[5]; -> Option D
  4. Quick Check:

    Array declaration uses square brackets [OK]
Hint: Use square brackets for array size in declaration [OK]
Common Mistakes:
  • Using parentheses instead of square brackets
  • Assigning a single value instead of declaring array
  • Using invalid keywords like 'array'
3. What will be the output of the following code?
int arr[3] = {10, 20, 30};
printf("%d", arr[1]);
medium
A. 10
B. 30
C. 20
D. Compilation error

Solution

  1. Step 1: Identify the array elements and indexes

    The array arr has elements: arr[0]=10, arr[1]=20, arr[2]=30.
  2. Step 2: Understand the printf statement

    printf prints the value at arr[1], which is 20.
  3. Final Answer:

    20 -> Option C
  4. Quick Check:

    arr[1] = 20 [OK]
Hint: Remember array index 1 is second element [OK]
Common Mistakes:
  • Confusing index 1 with index 0
  • Expecting output 10 or 30 incorrectly
  • Thinking code causes compilation error
4. Find the error in this code snippet:
int arr[4];
arr[4] = 10;
medium
A. Array index out of bounds
B. Missing semicolon
C. Wrong data type
D. No error

Solution

  1. Step 1: Check array size and indexing

    The array arr has size 4, so valid indexes are 0,1,2,3 only.
  2. Step 2: Identify the invalid index usage

    arr[4] accesses the fifth element, which is outside the array bounds causing undefined behavior.
  3. Final Answer:

    Array index out of bounds -> Option A
  4. Quick Check:

    Index must be less than array size [OK]
Hint: Index must be less than array size [OK]
Common Mistakes:
  • Using index equal to array size
  • Ignoring zero-based indexing
  • Assuming no error for out-of-bounds access
5. Given the array declaration int nums[5] = {1, 2, 3, 4, 5};, which code snippet correctly calculates the sum of all elements?
hard
A. int sum = 0; for(int i = 0; i <= 5; i++) sum += nums[i];
B. int sum = 0; for(int i = 0; i < 5; i++) sum += nums[i];
C. int sum = 0; for(int i = 1; i < 5; i++) sum += nums[i];
D. int sum = 0; for(int i = 0; i < 4; i++) sum += nums[i];

Solution

  1. Step 1: Understand array size and valid indexes

    The array nums has 5 elements with indexes 0 to 4.
  2. Step 2: Analyze each loop condition

    int sum = 0; for(int i = 0; i <= 5; i++) sum += nums[i]; uses i <= 5 which accesses nums[5] (out of bounds). int sum = 0; for(int i = 0; i < 5; i++) sum += nums[i]; uses i < 5 which correctly iterates from 0 to 4. int sum = 0; for(int i = 1; i < 5; i++) sum += nums[i]; starts at 1, missing nums[0]. int sum = 0; for(int i = 0; i < 4; i++) sum += nums[i]; stops at 4, missing nums[4].
  3. Final Answer:

    int sum = 0; for(int i = 0; i < 5; i++) sum += nums[i]; -> Option B
  4. Quick Check:

    Loop from 0 to less than size sums all elements [OK]
Hint: Loop from 0 to less than array size for all elements [OK]
Common Mistakes:
  • Using <= size causing out-of-bounds access
  • Starting loop at 1 missing first element
  • Stopping loop early missing last 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