Alex wants to create a menu-driven program that keeps displaying the menu until the user selects the 'Exit' option. Which loop is best suited for this task?

  • do-while loop
  • for loop
  • switch loop
  • while loop
Alex should use a do-while loop for this purpose. A do-while loop executes a block of code at least once and then repeats it based on a condition. It's ideal for menu-driven programs because it ensures that the menu is displayed at least once, even if the user chooses to exit immediately.

What is the size of the 'int' data type on a typical 32-bit system?

  • 16 bytes
  • 2 bytes
  • 4 bytes
  • 8 bytes
On a typical 32-bit system, the 'int' data type in C++ has a size of 4 bytes. This means it can store integer values within the range of approximately -2 billion to 2 billion.

Mia's C++ program has a function that's called before entering the main function. Which feature of C++ allows for such behavior?

  • Constructors
  • Destructors
  • Function Overloading
  • Inheritance
In C++, constructors are special member functions that are called automatically when an object of a class is created. If Mia's program has a function called before entering the main function, it's likely a constructor for an object instantiated before main.

How does a nested if-else structure differ from using else if?

  • Else if chains allow for mutually exclusive conditions
  • Else if chains are more readable and maintainable
  • Nested if-else structures are more efficient
  • Nested if-else structures can handle multiple conditions at once
A nested if-else structure consists of if statements inside other if statements. It can handle multiple conditions, but it may lead to less readable and maintainable code. In contrast, using else if chains allows for mutually exclusive conditions, making the code more structured and easier to follow. Else if chains are often preferred in scenarios where multiple conditions need to be checked.

Which of the following C++ data types is used to store a wide character?

  • char
  • int
  • short
  • wchar_t
The wchar_t data type in C++ is used to store wide characters. Wide characters are typically used to represent characters from extended character sets like Unicode. While char represents single-byte characters, wchar_t can hold multi-byte characters, making it suitable for wide character support.

Which of the following scenarios is NOT recommended for inline functions?

  • In Functions Called from Multiple Places
  • In Functions with Frequent Changes
  • In Functions with Heavy Computation
  • In Functions with Large Loops
Inline functions are not recommended in functions with large loops because it can lead to code bloat. The inline function code would be replicated within the loop, potentially increasing code size significantly.

The main function's standard signature returns an integer and accepts ______ arguments

  • four
  • one
  • three
  • two
The standard signature for the main function in C# and many other programming languages returns an integer and accepts two arguments, typically string[] args for command-line arguments.

In a switch statement, each case ends with the ______ keyword to prevent fall-through.

  • break
  • continue
  • goto
  • return
In a switch statement in C++, each "case" ends with the "break" keyword. The "break" statement is crucial in switch statements to prevent fall-through, meaning that once a case is matched and its code block is executed, the program exits the switch block.

What will be the flow of control in a switch statement if there is no break keyword at the end of a case?

  • It will continue to execute the next case
  • It will return to the main function
  • It will terminate the switch statement
  • It will throw an error
In C/C++, if there's no break statement at the end of a case in a switch statement, the control will continue to execute the next case statements without any regard for the case conditions. This behavior is known as "fall-through." It's important to use break statements to avoid unintended fall-through.

Bob is noticing that his compiled program size is much larger than expected after he marked several lengthy functions as inline. What could be a reason for this?

  • Code Duplication
  • Compiler Optimization
  • Linker Error
  • Memory Leaks
One reason for Bob's compiled program size to increase after marking lengthy functions as inline is code duplication. When functions are marked as inline, their code is replicated at each call site. If the function is lengthy and called from multiple places, this can lead to increased code size. It's essential to strike a balance between inlining for performance and avoiding excessive code duplication.