Bird
Raised Fist0
C++programming~10 mins

Defining structures 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 define a structure named Person.

C++
struct [1] {
    int age;
    double height;
};
Drag options to blanks, or click blank then click option'
AInfo
Bperson
CData
DPerson
Attempts:
3 left
💡 Hint
Common Mistakes
Using lowercase or different names like 'person' or 'Data'.
Forgetting to name the structure.
2fill in blank
medium

Complete the code to declare a variable of type Person named p1.

C++
Person [1];
Drag options to blanks, or click blank then click option'
Ap
Bp1
Cperson1
Dperson
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names like 'p' or 'person'.
Forgetting the semicolon after declaration.
3fill in blank
hard

Fix the error in the structure definition by completing the missing keyword.

C++
[1] Person {
    int age;
    double height;
};
Drag options to blanks, or click blank then click option'
Aenum
Bclass
Cstruct
Dunion
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'class' instead of 'struct'.
Omitting the keyword entirely.
4fill in blank
hard

Fill both blanks to define a structure named Car with members make and year.

C++
struct [1] {
    [2] make;
    int year;
};
Drag options to blanks, or click blank then click option'
ACar
Bstring
Cint
DVehicle
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'int' for 'make' instead of 'string'.
Naming the structure something other than 'Car'.
5fill in blank
hard

Fill all three blanks to define a structure named Book with members title, author, and pages.

C++
struct [1] {
    [2] title;
    [3] author;
    int pages;
};
Drag options to blanks, or click blank then click option'
ABook
Bstring
DPage
Attempts:
3 left
💡 Hint
Common Mistakes
Using different names for the structure.
Using wrong types for 'title' or 'author'.

Practice

(1/5)
1. What is the purpose of a struct in C++?
easy
A. To group related variables under one name
B. To create a loop structure
C. To define a function
D. To allocate memory dynamically

Solution

  1. Step 1: Understand the role of struct

    A struct is used to group different variables together under one name, making it easier to manage related data.
  2. Step 2: Compare with other options

    Options A, C, and D describe loops, functions, and memory allocation, which are unrelated to struct.
  3. Final Answer:

    To group related variables under one name -> Option A
  4. Quick Check:

    Struct groups data = B [OK]
Hint: Remember: struct bundles variables like a box [OK]
Common Mistakes:
  • Confusing struct with functions
  • Thinking struct creates loops
  • Mixing struct with dynamic memory
2. Which of the following is the correct way to define a structure named Person with members name (string) and age (int)?
easy
A. struct Person = { string name; int age; };
B. struct Person ( string name; int age; );
C. struct Person { string name; int age; };
D. struct Person: string name; int age;

Solution

  1. Step 1: Recall correct struct syntax

    In C++, a struct is defined using curly braces { } with members inside, ending with a semicolon.
  2. Step 2: Check each option

    struct Person { string name; int age; }; uses correct syntax with braces and semicolon. Options B, C, and D use incorrect symbols or missing braces.
  3. Final Answer:

    struct Person { string name; int age; }; -> Option C
  4. Quick Check:

    Struct uses braces and semicolon = A [OK]
Hint: Use braces { } and end with semicolon ; [OK]
Common Mistakes:
  • Using parentheses instead of braces
  • Omitting the semicolon after struct
  • Using equal sign or colon wrongly
3. What will be the output of this code?
struct Point { int x; int y; };
int main() {
  Point p = {3, 4};
  std::cout << p.x << "," << p.y << std::endl;
  return 0;
}
medium
A. 3,4
B. 4,3
C. x,y
D. Compilation error

Solution

  1. Step 1: Understand struct initialization

    The struct Point is initialized with {3, 4}, so p.x = 3 and p.y = 4.
  2. Step 2: Check output statement

    The code prints p.x then a comma, then p.y, so output is "3,4".
  3. Final Answer:

    3,4 -> Option A
  4. Quick Check:

    p.x=3 and p.y=4 prints 3,4 [OK]
Hint: Struct members print in order assigned [OK]
Common Mistakes:
  • Swapping member values
  • Expecting member names to print
  • Thinking initialization causes error
4. Identify the error in this structure definition:
struct Car {
  string model
  int year;
};
medium
A. Cannot have string type in struct
B. Missing semicolon after Car struct
C. Wrong keyword used instead of struct
D. Missing semicolon after model member

Solution

  1. Step 1: Check member declarations

    Each member must end with a semicolon. The model member is missing a semicolon.
  2. Step 2: Verify struct ending

    The struct ends with a semicolon, which is correct. The keyword struct is correct. String type is allowed.
  3. Final Answer:

    Missing semicolon after model member -> Option D
  4. Quick Check:

    Each member needs ; = A [OK]
Hint: Check each member line ends with ; [OK]
Common Mistakes:
  • Forgetting semicolon after members
  • Confusing struct end semicolon with member semicolon
  • Thinking string is invalid type
5. Given the structure:
struct Employee {
  string name;
  int id;
  double salary;
};

Which code correctly creates an Employee variable and sets the salary to 50000.0?
hard
A. Employee e; e.salary = 50000.0;
B. All of the above
C. Employee e = {"John", 101, 50000.0};
D. Employee e = {"John", 101}; e.salary = 50000.0;

Solution

  1. Step 1: Check each option for valid struct usage

    Employee e; e.salary = 50000.0; creates an Employee and sets salary directly, which is valid.
  2. Step 2: Analyze options B and C

    Employee e = {"John", 101}; e.salary = 50000.0; initializes name and id, then sets salary separately, valid. Employee e = {"John", 101, 50000.0}; initializes all members at once, also valid.
  3. Step 3: Confirm all options are correct

    All three ways correctly create and set salary.
  4. Final Answer:

    All of the above -> Option B
  5. Quick Check:

    Multiple valid ways to set struct members = D [OK]
Hint: Struct members can be set during or after creation [OK]
Common Mistakes:
  • Thinking partial initialization is invalid
  • Assuming only one correct way to assign members
  • Forgetting to set salary after partial init
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