Basics of C++ - Objective Questions (MCQs)

Set 1


Questions



Question 1.

What is the correct value to return to the operating system upon the successful completion of a program?
A. -1
B. 1
C. 0
D. Programs do not return a value.

Collection on http://www.cs-mcqs.blogspot.com

Question 2.

What is the only function all C++ programs must contain?
A. start()
B. system()
C. main()
D. program()

Collection on http://www.cs-mcqs.blogspot.com

Question 3.

What punctuation is used to signal the beginning and end of code blocks?
A. { }
B. -> and <-
C. BEGIN and END
D. ( and )

Collection on http://www.cs-mcqs.blogspot.com

Question 4.

What punctuation ends most lines of C++ code?
A. . (dot)
B. ; (semi-colon)
C. : (colon)
D. ' (single quote)

Collection on http://www.cs-mcqs.blogspot.com

Question 5.

Which of the following is a correct comment?
A. */ Comments */
B. ** Comment **
C. /* Comment */
D. { Comment }

Collection on http://www.cs-mcqs.blogspot.com

Question 6.

Which of the following is not a correct variable type?
A. float
B. real
C. int
D. double

Collection on http://www.cs-mcqs.blogspot.com

Question 7.

Which of the following is the correct operator to compare two variables?
A. :=
B. =
C. equal
D. ==

Collection on http://www.cs-mcqs.blogspot.com

Question 8.

Which of the following is true?
A. 1
B. 66
C. .1
D. -1
E. All of the above

Collection on http://www.cs-mcqs.blogspot.com

Question 9.

Which of the following is the boolean operator for logical-and?
A. &
B. &&
C. |
D. |&

Collection on http://www.cs-mcqs.blogspot.com

Question 10.

Evaluate !(1 && !(0 || 1)).
A. True
B. False
C. Unevaluatable

Scroll Down for answers

Collection on http://www.cs-mcqs.blogspot.com



 







Answers


1. C. 0
2. C. main()
3. A. { }
4. B. ;
5. C. /* Comment */
6. B. real
7. D. ==
8. E. All of the above
9. B. &&
10. A. True


Set 2


Questions




 

Question 1

Identify the correct statement
a. Programmer can use comments to include short explanations within the source code itself.
b. All lines beginning with two slash signs are considered comments.
c. Comments very important effect on the behaviour of the program
d. both

Question 2

The directives for the preprocessors begin with
a.    Ampersand symbol (&Wink
b.    Two Slashes (//)
c.    Number Sign (#)
d.    Less than symbol (<Wink

Question 3

The file iostream includes
a.    The declarations of the basic standard input-output library.
b.    The streams of includes and outputs of program effect.
c.    Both of these
d.    None of these

Question 4

There is a unique function in C++ program by where all C++ programs start their execution
a.    Start()
b.    Begin()
c.    Main()
d.    Output()

Question 5

Every function in C++ are followed by
a.    Parameters
b.    Parenthesis
c.    Curly braces
d.    None of these

Question 6

Which of the following is false?
a.    Cout represents the standard output stream in c++.
b.    Cout is declared in the iostream standard file
c.    Cout is declared within the std namespace
d.    None of above

Question 7

Every statement in C++ program should end with
a.    A full stop (.)
b.    A Comma (,)
c.    A Semicolon (Wink
d.    A colon (Smile

Question 8

Which of the following statement is true about preprocessor directives?
a.    These are lines read and processed by the preprocessor
b.    They do not produce any code by themselves
c.    These must be written on their own line
d.    They end with a semicolon

Question 9

A block comment can be written by
a.    Starting every line with double slashes (//)
b.    Starting  with /* and ending with */
c.    Starting with //* and ending with *//
d.    Starting with <!- and ending with -!>

Question 10

When writing comments you can
a.    Use code and  /* comment on the same line
b.    Use code and // comments on the same line
c.    Use code and //* comments on the same line
d.    Use code and <!- comments on the same line











Answers



 
1.    b.  All lines beginning with two slash signs are considered comments.
2.    c. Number Sign (#)
3.    a. The declarations of the basic standard input-output library.
4.    c. Main()
5.    b. Parenthesis
6.    d. None of above
7.    c. A semicolon
8.    d. They end with a semicolon
9.    b. Starting  with /* and ending with */
10.    b. Use code and // comments on the same line

Set 3


Questions



Question 1


A variable is/are

a.    String that varies during program execution

b.    A portion of memory to store a determined value

c.    Those numbers that are frequently required in programs

d.    None of these



Question 2


Which of the following can not be used as identifiers?

a.    Letters

b.    Digits

c.    Underscores

d.    Spaces



Question 3


Which of the following identifiers is invalid?

a.    papername

b.    writername

c.    typename

d.    printname



Question 4


Which of the following can not be used as valid identifier?

a.    bitand

b.    bittand

c.    biand

d.    band



Question 5


The difference between x and ‘x’ is

a.    The first one refers to a variable whose identifier is x and the second one refers to the character constant x

b.    The first one is a character constant x and second one is the string literal x

c.    Both are same

d.    None of above


Question 6


Which of the following is not a valid escape code?

a.    \t

b.    \v

c.    \f

d.    \w



Question 7


Which of the following statement is true?

a.    String Literals can extend to more than a single line of code by putting a backslash sign at the end of each unfinished line.

b.    You can also concatenate several string constants separating them by one or several blank spaces, tabulators, newline or any other valid blank character

c.    If we want the string literal to explicitly made of wide characters, we can precede the constant with the L prefix

d.    All of above



Question 8


Regarding #difine which of the following statement is false?

a.    It is not C++ statement but the directive for the preprocessor

b.    This does not require a semicolon at the end of line

c.    It is a C++ statement that declares a constant in C++

d.    None of the above



Question 9


Regarding following statement  which of the statements is true?

const int pathwidth=100;

a.    Declares a variable pathwidth with 100 as its initial value

b.    Declares a construction pathwidth with 100 as its initial value

c.    Declares a constant pathwidth whose value will be 100

d.    Constructs an integer type variable with pathwidth as identifier and 100 as value



Question 10


In an assignment statement

a.    The lvalue must always be a variable

b.    The rvalue might be a constant, a variable, an expression or any combination of these

c.    The assignment always takes place from right to left and never the other way

d.    All of above
















Answers


1.     b. A portion of memory to store a determined value

2.     d.  Spaces

3.     c. Typename

4.     a. Bitand

5.     a. The first one refers to a variable whose identifier is x and the second one refers to the character constant x

6.     d. \w

7.     d. All of above

8.     c. It is a C++ statement that declares a constant in C++

9.    c. Declares a constant pathwidth whose value will be 100

10. d. All of above

Set 4


Questions


Question 1

In an assignment statement
a=b;
Which of the following statement is true?
a.    The variable a and the variable b are equal.
b.    The value of b is assigned to variable a but the later changes on variable b will not effect the value of variable a
c.    The value of b is assigned to variable a and the later changes on variable b will effect the value of variable a
d.    The value of variable a is assigned to variable b and the value of variable b is assigned to variable a.

Question 2

All of the following are valid expressions in C++
a  =  2 + (b = 5);
a  = b = c = 5;
a  = 11 % 3
a.    True
b.    False


Question 3:

To increase the value of c by one which of the following statement is wrong?
a.    c++;
b.    c = c + 1;
c.    c + 1 => c;
d.    c += 1


Question 4:

When following piece of code is executed, what happens?
b = 3;
a = b++;
a.    a contains 3 and b contains 4
b.    a contains 4 and b contains 4
c.    a contains 4 and b contains 3
d.    a contains 3 and b contains 3


Question 5:

The result of a Relational operation is always
a.    either True or False
b.    is less than or is more than
c.    is equal or less or more
d.    All of these


Question 6:

Which of the following is not a valid relational operator?
a.    ==
b.    =>
c.    >=
d.    >=

Question 7:

What is the final value of x when the code int x; for(x=0; x<10; x++) {} is run?
A. 10
B. 9
C. 0
D. 1


Question 8:

When does the code block following while(x<100) execute?
A. When x is less than one hundred
B. When x is greater than one hundred
C. When x is equal to one hundred
D. While it wishes


Question 9:

Which is not a loop structure?
A. for
B. do while
C. while
D. repeat until


Question 10:

How many times is a do while loop guaranteed to loop?
A. 0
B. Infinitely
C. 1
D. Variable



 












Answers



1.    b. The value of b is assigned to variable a but the later changes on variable b will not effect the value of variable a
2.    a. True
3.    c. c + 1 => c;
4.    a. a contains 3 and b contains 4
5.    a. either True or False
6.    b. =>
7.    A. 10
8.    A. When x is less than one hundred
9.    D. Repeat Until
10.    C. 1

Set 5


Questions


Question 1

Streams are
a.       Abstraction to perform input and output operations in sequential media
b.      Abstraction to perform input and output operations in direct access media
c.       Objects  where a program can either insert or extract characters to and from it
d.      Both a and c

Question 2

Which of the following is known as insertion operator?
a.       ^
b.      v
c.       << 
d.      >> 


Question 3:

Regarding the use of  new line character (/n) and endl manipulator with cout statement
a.       Both ways are exactly same
b.      Both are similar but endl additionally performs flushing of buffer
c.       endl can’t be used with cout
d.      \n can’t be used with cout

Question 4:

Which of the following is output statement in C++?
a.       print
b.      write
c.       cout
d.      cin

Question 5:

Which of the following is input statement in C++?
a.       cin
b.      input
c.       get
d.      none of above 

Question 6:

By default, the standard output device for C++ programs is
a.       Printer
b.      Monitor
c.       Modem
d.      Disk

Question 7:

By default, the standard input device for C++ program is
a.       Keyboard
b.      Mouse
c.       Scanner
d.      None of these

Question 8:

Which of the following statement is true regarding cin statement?
a.       cin statement must contain a variable preceded by >> operator
b.      cin does not process the input until user presses RETURN key
c.       you can use more than one datum input from user by using cin
d.      all of above

Question 9:

Which of the following is extraction operator in C++?
a.       ^
b.      v
c.       << 
d.      >> 

Question 10:

When requesting multiple datum, user must separate each by using
a.       a space
b.      a tab character
c.       a new line character
d.      all of above
















Answers



1.       d. Both a and c
2.       c. <<
3.       b. Both are similar but endl additionally performs flushing of buffer
4.       c. Cout
5.       a. Cin
6.       b. Monitor
7.       a. Keyboard
8.       d. All of above
9.       d. >>
10.   d. all of above

Set 6


Questions




Question 1:

cin extraction stops execution as soon as it finds any blank space character
a.       true
b.      false

Question 2:

Observe the following statements and decide what do they do.
string mystring;
getline(cin, mystring);
a.       reads a line of string from cin into mystring
b.      reads a line of string from mystring into cin
c.       cin can’t be used this way
d.      none of above

Question 3:

Regarding stringstream identify the invalid statement
a.       stringstream is defined in the header file <sstream>
b.      It allows string based objects treated as stream
c.       It is especially useful to convert strings to numerical values and vice versa.
d.      None of above

Question 4:

Which of the header file must be included to use stringstream?
a.       <iostream>
b.      <string>
c.       <sstring>
d.      <sstream>

Question 5:

Which of the following header file does not exist?
a.       <iostream>
b.      <string>
c.       <sstring>
d.      <sstream>

Question 6:

If you use same variable for two getline statements
a.       Both the inputs are stored in that variable
b.      The second input overwrites the first one
c.       The second input attempt fails since the variable already got its value
d.      You can not use same variable for two getline statements

Question 7:

The “return 0;” statement in main function indicates
a.       The program did nothing; completed 0 tasks
b.      The program worked as expected without any errors during its execution
c.        not to end the program yet.
d.      None of above

Question 8:

Which of the following is not a reserve keyword in C++?
a.       mutable
b.      default
c.       readable
d.      volatile

Question 9:

The size of following variable is not 4 bytes in 32 bit systems
a.       int
b.      long int
c.       short int
d.      float

Question 10:

Identify the correct statement regarding scope of variables
a.       Global variables are declared in a separate file and accessible from any program.
b.      Local variables are declared inside a function and accessible within the function only.
c.       Global variables are declared inside a function and accessible from anywhere in program.
d.      Local variables are declared in the main body of the program and accessible only from functions.

















Answers



1.       a. True
2.       a. Reads a line of string from cin into mystring
3.       d. None of above
4.       d. <sstream>
5.       c. <sstring>
6.       b. The second input overwrites the first one
7.       b. The program worked as expected without any errors during its execution
8.       c. readable
9.       c. short int
10      b. Local variables are declared inside a function and accessible within the function on





Set 7


Questions


 

Question 1:

Find out the error in following block of code.
If (x = 100)
    Cout << “x is 100”;
a.       100 should be enclosed in quotations
b.      There is no semicolon at the end of first line
c.       Equals to operator mistake
d.      Variable x should not be inside quotation

Question 2:

Looping in a program means
a.       Jumping to the specified branch of program
b.      Repeat the specified lines of code
c.       Both of above
d.      None of above

Question 3:

The difference between while structure and do structure for looping is
a.       In while statement the condition is tested at the end of first iteration
b.      In do structure the condition is tested at the beginning of first iteration
c.       The do structure decides whether to start the loop code or not whereas while statement decides whether to repeat the code or not
d.      In while structure condition is tested before executing statements inside loop whereas in do structure condition is tested before repeating the statements inside loop

Question 4:

Which of the following is not a looping statement in C?
a.       while
b.      until
c.       do
d.      for

Question 5:

Which of the following is not a jump statement in C++?
a.       break
b.      goto
c.       exit
d.      switch

Question 6:

Which of the following is selection statement in C++?
a.       break
b.      goto
c.       exit
d.      switch

Question 7:

The continue statement
a.       resumes the program if it is hanged
b.      resumes the program if it was break was applied
c.       skips the rest of the loop in current iteration
d.      all of above

Question 8:

Consider the following two pieces of codes and choose the best answer

Code 1:

switch (x) {
case  1:
cout <<”x is 1”;
break;
case 2:
                cout <<”x is 2”;
                break;
default:
                cout <<”value of x unknown”;
}

Code 2

If (x==1){
                Cout <<”x is 1”;
                }
Else if (x==2){
                Cout << “x is 2”;
                }
Else{
                Cout <<”value of x unknown”;
}             

a.       Both of the above code fragments have the same behaviour
b.      Both of the above code fragments produce different effects
c.       The first code produces more results than second
d.      The second code produces more results than first.

Question 9:

Observe the following block of code and determine what happens when x=2?
switch (x){
case 1:
case 2:
case 3:
                cout<< "x is 3, so jumping to third branch";
                goto thirdBranch;
default:
                cout<<"x is not within the range, so need to say Thank You!";
                }

a.       Program jumps to the end of switch statement since there is nothing to do for x=2
b.      The code inside default will run since there is no task for x=2, so, default task is run
c.       Will display x is 3, so jumping to third branch and jumps to thirdBranch.
d.      None of above

Question 10

Which of the following is false for switch statement in C++?
a.       It uses labels instead of blocks
b.      we need to put break statement at the end of the group of statement of a condition
c.       we can put range for case such as case 1..3
d.      None of above

















Answers


 
1.       c. Equals to operator mistake
2.       b. Repeat the specified lines of code
3.       In while structure condition is tested before executing statements inside loop whereas in do structure condition is tested before repeating the statements inside loop
4.       b. Until
5.       d. Switch
6.       d. Switch
7.       c. skips the rest of the loop in current iteration
8.       a. Both of the above code fragments have the same behaviour
9.       c. Will display x is 3, so jumping to third branch and jumps to thirdBranch
1.   c. we can put range for case such as case 1..3

Set 8


Questions


Question 1:

The void specifier is used if a function does not have return type.
a.       True
b.      False

Question 2:

You must specify void in parameters if a function does not have any arguments.
a.       True
b.      False

Question 3:

Type specifier is optional when declaring a function
a.       True
b.      False

Question 4:

Study the following piece of code and choose the best answer
int x=5, y=3, z;
a=addition(x,y)
a.       The function addition is called by passing the values
b.      The function addition is called by passing reference

Question 5:

In case of arguments passed by values when calling a function such as z=addidion(x,y),
a.       Any modifications to the variables x & y from inside the function will not have any effect outside the function.
b.      The variables x and y will be updated when any modification is done in the function
c.       The variables x and y are passed to the function addition
d.      None of above are valid.

Question 6:

If the type specifier of parameters of a function is followed by an ampersand (&Wink, that function call is
a.       pass by value
b.      pass by reference

Question 7:

In case of pass by reference
a.       The values of those variables are passed to the function so that it can manipulate them
b.      The location of variable in memory is passed to the function so that it can use the same memory area for its processing
c.       The function declaration should contain ampersand (&Wink in its type declaration
d.      All of above

Question 8:

Overloaded functions are
a.       Very long functions that can hardly run
b.      One function containing another one or more functions inside it.
c.       Two or more functions with the same name but different number of parameters or type.
d.      None of above

Question 9:

Functions can be declared with default values in parameters. We use default keyword to specify the value of such parameters.
a.       True
b.      False

Question 10:

Examine the following program and determine the output
#include <iostream>
using namespace std;
int operate (int a, int b)
{
                return (a * b);
}
float operate (float a, float b)
{
                return (a/b);
}
int main()
{
                int x=5, y=2;
                float n=5.0, m=2.0;
                cout << operate(x,y) <<"\t";
cout << operate (n,m);
return 0;
}

a.       10.0      5.0
b.      5.0         2.5
c.       10.0      5
d.      10         2.5

















Answers



1.       a. True
2.       b. False  [ parameters can be empty without void too!]
3.       b. False
4.       a. The function addition is called by passing the values
5.       a. Any modifications to the variables x & y from inside the function will not have any effect outside the function
6.       b. pass by reference
7.       b. The location of variable in memory is passed to the function so that it can use the same memory area for its processing
8.       d. None of above
9.       b. False
10.    d. 10       2.5



Post a Comment

Previous Post Next Post