250+ TOP MCQs on Structures and Answers

This section on C++ interview questions and answers on “Structures”. One shall practice these interview questions to improve their C++ programming skills needed for various interviews (campus interviews, walk-in interviews, company interviews), placements, entrance exams and other competitive exams. These questions can be attempted by anyone focusing on learning C++ programming language. They can be a beginner, fresher, engineering graduate or an experienced IT professional. Our C++ interview questions come with the detailed explanation of the answers which helps in better understanding of C++ concepts.

Here is a listing of C++ interview questions on “Structures” along with answers, explanations and/or solutions:

1. The data elements in the structure are also known as what?
a) objects
b) members
c) data
d) objects & data
Answer: b
Clarification: Variables declared inside a class are called as data elements or data members.

2. What will be used when terminating a structure?
a) :
b) }
c) ;
d) ;;
Answer: c
Clarification: While terminating a structure, a semicolon is used to end this up.

3. What will happen when the structure is declared?
a) it will not allocate any memory
b) it will allocate the memory
c) it will be declared and initialized
d) it will be declared
Answer: a
Clarification: While the structure is declared, it will not be initialized, So it will not allocate any memory.

4. The declaration of the structure is also called as?
a) structure creator
b) structure signifier
c) structure specifier
d) structure creator & signifier
Answer: c
Clarification: The structure declaration with open and close braces and with a semicolon is also called structure specifier.

  250+ TOP MCQs on Modularization and Interfaces and Answers

5. What will be the output of the following C++ code?

  1.     #include 
  2.     #include 
  3.     using namespace std;
  4.     int main()
  5.     {
  6.         struct student 
  7.         {
  8.             int num;
  9.             char name[25];
  10.         };
  11.         student stu;
  12.         stu.num = 123;
  13.         strcpy(stu.name, "John");
  14.         cout << stu.num << endl;
  15.         cout << stu.name << endl;
  16.         return 0;
  17.     }

a)

123
john

b)

john
john

c) compile time error
d) runtime error
Answer: a
Clarification: We are copying the value john to the name and then we are printing the values that are in the program.
Output:

$ g++ stu.cpp
$ a.out
123
john

6. What will be the output of the following C++ code?

  1.     #include 
  2.     using namespace std;
  3.     struct Time 
  4.     {
  5.         int hours;
  6.         int minutes;
  7.         int seconds;
  8.     };
  9.     int toSeconds(Time now);
  10.     int main()
  11.     {
  12.         Time t;
  13.         t.hours = 5;
  14.         t.minutes = 30;
  15.         t.seconds = 45;
  16.         cout << "Total seconds: " << toSeconds(t) << endl;
  17.         return 0;
  18.     }
  19.     int toSeconds(Time now)
  20.     {
  21.         return 3600 * now.hours + 60 * now.minutes + now.seconds;
  22.     }

a) 19845
b) 20000
c) 15000
d) 19844
Answer: a
Clarification: In this program, we are just converting the given hours and minutes into seconds.
Output:

$ g++ stu1.cpp
$ a.out
Total seconds:19845

7. What will be the output of the following C++ code?

  1.     #include 
  2.     using namespace std;
  3.     int main()
  4.     {
  5.         struct ShoeType 
  6.         {
  7.            string style;
  8.            double price;
  9.         };
  10.          ShoeType shoe1, shoe2;
  11.          shoe1.style = "Adidas";
  12.          shoe1.price = 9.99;
  13.          cout << shoe1.style << " $ "<< shoe1.price;
  14.          shoe2 = shoe1;
  15.          shoe2.price = shoe2.price / 9;
  16.          cout << shoe2.style << " $ "<< shoe2.price;
  17.          return 0;
  18.     }

a) Adidas $ 9.99Adidas $ 1.11
b) Adidas $ 9.99Adidas $ 9.11
c) Adidas $ 9.99Adidas $ 11.11
d) Adidas $ 11.11Adidas $ 11.11
Answer: a
Clarification: We copied the value of shoe1 into shoe2 and divide the shoe2 value by 9, So this is the output.
Output:

$ g++ stu2.cpp
$ a.out
Adidas $ 9.99
Adidas $ 1.11

8. What will be the output of the following C++ code?

  1.     #include 
  2.     using namespace std;
  3.     struct sec 
  4.     {
  5.         int a;
  6.         char b;
  7.     };
  8.     int main()
  9.     {
  10.         struct sec s ={25,50};
  11.         struct sec *ps =(struct sec *)&s;
  12.         cout << ps->a << ps->b;
  13.         return 0;
  14.     }

a) 252
b) 253
c) 254
d) 262
Answer: a
Clarification: In this program, We are dividing the values of a and b, printing it.
Output:

$ g++ stu5.cpp
$ a.out
252

9. Which of the following is a properly defined structure?
a) struct {int a;}
b) struct a_struct {int a;}
c) struct a_struct int a;
d) struct a_struct {int a;};
Answer: d
Clarification: option struct {int a;} is not correct because name of structure and ;(after declaration) are missing. In option struct a_struct {int a;} ; is missing. In option struct a_struct int a; {} are missing.

10. Which of the following accesses a variable in structure *b?
a) b->var;
b) b.var;
c) b-var;
d) b>var;
Answer: a
Clarification: Because arrow operator(->) is used to access members of structure pointer whereas dot operator(.) is used to access normal structure variables.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top