Bird
Raised Fist0
C++programming~5 mins

Multi-dimensional arrays in C++ - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a multi-dimensional array in C++?
A multi-dimensional array is an array of arrays. It allows storing data in a table-like structure with rows and columns, such as a 2D array.
Click to reveal answer
beginner
How do you declare a 2D array with 3 rows and 4 columns in C++?
You declare it like this: int arr[3][4]; This creates 3 rows and 4 columns of integers.
Click to reveal answer
beginner
How do you access the element in the 2nd row and 3rd column of a 2D array named arr?
Use arr[1][2]. Remember, indexing starts at 0, so row 2 is index 1 and column 3 is index 2.
Click to reveal answer
intermediate
How can you initialize a 2D array with values at the time of declaration?
You can write: int arr[2][3] = {{1, 2, 3}, {4, 5, 6}}; This sets the first row to 1,2,3 and the second row to 4,5,6.
Click to reveal answer
intermediate
What happens if you try to access an element outside the bounds of a multi-dimensional array?
Accessing outside the array bounds causes undefined behavior. This can lead to wrong data, crashes, or security issues.
Click to reveal answer
How do you declare a 3D array with dimensions 2x3x4 in C++?
Aint arr[2,3,4];
Bint arr[3][4][2];
Cint arr[2][3][4];
Dint arr(2,3,4);
What is the index of the first element in any dimension of a C++ array?
A1
BDepends on the array
C-1
D0
Which of these is a valid way to access an element in a 2D array named arr?
Aarr[2][3]
Barr(2,3)
Carr[2,3]
Darr{2}{3}
What does the following code do?
int arr[2][2] = {{1, 2}, {3, 4}};
ACauses a syntax error
BCreates a 2x2 array with values 1,2 in first row and 3,4 in second row
CCreates an empty 2D array
DCreates a 1D array with 4 elements
What is the risk of accessing arr[5][5] if arr is declared as int arr[3][3];?
AUndefined behavior, possible crash or wrong data
BCompiler error
CNo risk, it returns 0
DIt will resize the array automatically
Explain how multi-dimensional arrays are stored in memory in C++ and how indexing works.
Think about how a 2D table is stored as a long list in memory.
You got /3 concepts.
    Describe how to declare, initialize, and access elements in a 2D array in C++.
    Use examples with small arrays to explain.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is a multi-dimensional array in C++?
      easy
      A. A variable that holds a single number
      B. An array that stores only one value
      C. A function that returns multiple values
      D. An array with more than one index, like rows and columns

      Solution

      1. Step 1: Understand array dimensions

        A multi-dimensional array uses multiple indexes to access elements, such as row and column in a table.
      2. Step 2: Compare options

        Only An array with more than one index, like rows and columns describes an array with more than one index, matching the concept of multi-dimensional arrays.
      3. Final Answer:

        An array with more than one index, like rows and columns -> Option D
      4. Quick Check:

        Multi-dimensional array = multiple indexes [OK]
      Hint: Think of rows and columns in a table for multi-dimensional arrays [OK]
      Common Mistakes:
      • Confusing arrays with single values
      • Thinking functions return multiple values
      • Mixing variables with arrays
      2. Which of the following is the correct way to declare a 2D array of integers with 3 rows and 4 columns in C++?
      easy
      A. int arr[3][4];
      B. int arr(3,4);
      C. int arr[4][3];
      D. int arr{3,4};

      Solution

      1. Step 1: Recall C++ 2D array syntax

        The correct syntax uses square brackets with sizes: int arr[rows][columns];
      2. Step 2: Check each option

        int arr[3][4]; uses int arr[3][4]; which means 3 rows and 4 columns, correct syntax. Others are invalid or reversed.
      3. Final Answer:

        int arr[3][4]; -> Option A
      4. Quick Check:

        Use square brackets for dimensions [OK]
      Hint: Use square brackets for rows and columns in declaration [OK]
      Common Mistakes:
      • Using parentheses instead of brackets
      • Swapping row and column sizes
      • Using curly braces for declaration
      3. What is the output of the following C++ code?
      int arr[2][3] = {{1, 2, 3}, {4, 5, 6}};
      std::cout << arr[1][2];
      medium
      A. 6
      B. 3
      C. 4
      D. 2

      Solution

      1. Step 1: Understand array initialization

        The array has 2 rows and 3 columns: first row {1,2,3}, second row {4,5,6}.
      2. Step 2: Access element arr[1][2]

        Row index 1 is second row, column index 2 is third element: value is 6.
      3. Final Answer:

        6 -> Option A
      4. Quick Check:

        arr[1][2] = 6 [OK]
      Hint: Remember indexes start at 0; arr[1][2] is second row, third column [OK]
      Common Mistakes:
      • Confusing row and column indexes
      • Forgetting zero-based indexing
      • Reading wrong element from array
      4. Identify the error in this C++ code snippet:
      int matrix[2][2] = {{1, 2}, {3}};
      std::cout << matrix[1][1];
      medium
      A. Missing value in second row initialization
      B. Array size mismatch causes compile error
      C. No error, code runs and prints 0
      D. Incorrect use of std::cout syntax

      Solution

      1. Step 1: Check array initialization

        The second row has only one value {3}, missing one element for 2 columns.
      2. Step 2: Understand C++ behavior for missing elements

        Missing elements are initialized to 0 automatically, so matrix[1][1] is 0.
      3. Step 3: Check output statement

        std::cout syntax is correct, so it prints 0 without error.
      4. Final Answer:

        No error, code runs and prints 0 -> Option C
      5. Quick Check:

        Missing elements default to 0 in arrays [OK]
      Hint: Missing elements in array init become zero, no error [OK]
      Common Mistakes:
      • Assuming missing elements cause errors
      • Thinking std::cout syntax is wrong
      • Expecting garbage values instead of zero
      5. How can you sum all elements of a 3x3 integer array named grid in C++?
      hard
      A. Use std::accumulate directly on the 2D array
      B. Use nested loops to add each element to a sum variable
      C. Use a single loop from 0 to 8 to sum elements
      D. Add only the first row elements

      Solution

      1. Step 1: Understand 2D array traversal

        To access all elements in a 3x3 array, use two loops: one for rows, one for columns.
      2. Step 2: Sum elements with nested loops

        Inside inner loop, add each element grid[i][j] to a sum variable to get total sum.
      3. Final Answer:

        Use nested loops to add each element to a sum variable -> Option B
      4. Quick Check:

        Nested loops sum all elements [OK]
      Hint: Use two loops: outer for rows, inner for columns [OK]
      Common Mistakes:
      • Using single loop ignoring 2D structure
      • Summing only part of the array
      • Trying to use std::accumulate on 2D array directly
      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