Bird
Raised Fist0
C++programming~30 mins

Multi-dimensional arrays in C++ - Mini Project: Build & Apply

Choose your learning style10 modes available
Working with Multi-dimensional Arrays in C++
📖 Scenario: You are organizing seating for a small movie theater. The theater has 3 rows and 4 seats in each row. You want to keep track of how many people are sitting in each seat.
🎯 Goal: Create a 2D array to represent the seats, fill it with some numbers, then calculate the total number of people seated in the theater.
📋 What You'll Learn
Create a 2D array called seats with 3 rows and 4 columns
Initialize the array with exact values for each seat
Create an integer variable called totalPeople to hold the sum
Use nested for loops with variables row and col to iterate over seats
Add the number of people in each seat to totalPeople
Print the total number of people using std::cout
💡 Why This Matters
🌍 Real World
Multi-dimensional arrays are used to represent grids, tables, or matrices such as seating charts, game boards, or pixel data in images.
💼 Career
Understanding multi-dimensional arrays is essential for software developers working with data structures, graphics, simulations, and many other fields.
Progress0 / 4 steps
1
Create the 2D array seats
Create a 2D array called seats with 3 rows and 4 columns. Initialize it with these exact values: first row {1, 0, 2, 1}, second row {0, 3, 1, 0}, third row {2, 1, 0, 1}.
C++
Hint

Use int seats[3][4] = { ... }; to create and initialize the array.

2
Create the variable totalPeople
Create an integer variable called totalPeople and set it to 0. This will hold the total number of people seated.
C++
Hint

Use int totalPeople = 0; to create and initialize the variable.

3
Sum all people using nested for loops
Use nested for loops with variables row and col to iterate over the seats array. Add each seat's value to totalPeople.
C++
Hint

Use two for loops: outer loop for rows, inner loop for columns. Add each seat value to totalPeople.

4
Print the total number of people
Use std::cout to print the text Total people seated: followed by the value of totalPeople.
C++
Hint

Use std::cout << "Total people seated: " << totalPeople << std::endl; to print the result.

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