Engineering Problem Solving with C++, 3e Chapter 2 Test Bank
1. Match each of the following data types with literal constants of that data type. A data type
can be used more than once.
A. integer
B. double
C. character
D. string
E. boolean
F. none of the above.
________ 1.427E3
________ “Oct”
________ -63.29
________ #Hashtag
________ ‘+’
________ -85
________ true
________ ‘\”
2. For each of the following determine if it is a valid identifier, and if it is not state why.
A. House#
B. 2nd
C. WHILE
D. num4
E. double
F. last_name
3. Evaluate the following functions
A. (4 – 7) * 3
B. 14 % 4
C. 24 / 9
D. 6.72 / 4.2
E. 2 + 8 * 3 + 7
4. What is the output of the following program.
#include <iostream>
#include <iomanip>
using namespace std;
int main ()
{ int hr, min;
hr = 1;
min = 50;
cout << “The exam is over at ” << hr << “:” << min << endl;
cout << “One down\n ” << “two to go!” ;
return 0;
}
Engineering Problem Solving with C++, 3e Chapter 2 Test Bank
5. What is the output of the following program
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{ int WholeNumber;
double Real1, Real2;
WholeNumber = 76;
Real1 = 3.167;
Real2 = -24.103;
cout << setw(6) << WholeNumber << endl;
cout << setiosflags(ios::fixed);
cout << setprecision(2) << Real1 << “, ” << Real2 << endl;
cout << setiosflags(ios::showpoint) << Real2 << 8.376 << endl;
return 0;
}
6. Which of the following are valid on the left side of an assignment operator?
A. A numeric constant
B. An expression such as 8*6
C. A declared constant
D. A variable
E. All of the above are valid on the left side of an assignment operator.
7. Which of the following is valid on the right side of an assignment operator?
A. A numeric constant
B. An expression such as 8*6
C. A declared constant
D. A variable
E. All of the above are valid on the right side of an assignment operator.
8. The operator >> is used to
A. Take a value from the input stream an store it into a variable
B. Take a value from a variable and place it into the output stream
C. Perform integer division and produce the remainder of the division
D. Specify that the left hand operand is much larger than the right hand operand.
9. The file which must appear in a #include preprocessor statement if you are using the fabs
function is …
A. iostream
B. iomanip
C. cmath
D. string
Engineering Problem Solving with C++, 3e Chapter 2 Test Bank
10. Which of the following is not a data type used to represent a floating point value
A. float
B. double
C. long double
D. short
11. Which of the following is not a syntactically correct declaration?
A. int number(12);
B. double value1(4.5); value2(3.7);
C. double tax_percent =0.06;
D. double x{0.0};
E. int x,y,z;
12. Which of the following operators is the increment operator
A. +=
B. +
C. %
D. ++
13. Which output flag is set to guarantee that a decimal point will be printed when printing a
floating point value?
A. fixed
B. showpoint
C. precision
D. setw
14. Function arguments are …
A. the term used for the name of the function
B. the term that refers to the value returned by a function
C. the term that refers to the values passed to the function when the function is invoked.
D. the term that refers to a function invocation.
15. Which of the following function invocations is an approximation of PI
A. atan(-1);
B. acos(-1);
C. sin(-1);
D. cos(-1);
16. Line comments begin with // and run for the rest of the line
A. true
B. false
17. The purpose of a comment is to help the compiler understand your program and create
efficient object code.
A. true
B. false
Engineering Problem Solving with C++, 3e Chapter 2 Test Bank
18. The math function sin will compute sine when given the angle in degrees
A. true
B. false
19. The setw manipulator is used to set the field width for all values that are printed until another
setw manipulator is encountered.
A. true
B. false
20. The preprocessor directive #include <iostream> copies the file iostream into the program
before compilation, so that the program can use input and output objects and operators.
A. true
B. false
21. The operand of the increment operator may be either a declared constant or a variable.
A. true
B. false
22. The math function tan will compute tangent when the angle is given in radians.
A. true
B. false
23. In a case sensitive language, such as C++, the variables apples and APPLES refer to
different storage locations.
A. true
B. false
24. An expression involving operators can appear after the output operator << in a cout
statement.
A. true
B. false
25. The precision of a floating point number is determined by the number of bits used to
represent the exponent.
A. true
B. false
26. Given the declaration auto i = 0; i is declared as an int.
A. True
B. False
27. Given the declaration auto i = 1.0; i is declared as a double
A. True
B. False
Engineering Problem Solving with C++, 3e Chapter 2 Test Bank
28. C++ is a strongly typed programming language.
A. True
B. False
29. Symbolic constants in C++ are declared with the modifier const; attempting to change the
value of a symbolic constant will be flagged as a syntax error by the compiler.
A. True
B. False
30. Class declarations specify a programmer-defined type/object.
A. True
B. False
31. Class members may include data (attributes) and methods (functions).
A. True
B. False
32. Which of the following visibilities by be used to control access to class members:
A. public
B. protected
C. private
D. All of these are visibilities used to control access to class members.
33. Class attributes define the operations that may be performed on class objects.
A. True
B. False
34. Constructors are special methods of a class that are executed when objects of the class type
are created.
A. True
B. False
35. There may be exactly one constructor defined in any class.
A. True
B. False
36. Constructors must have the same name as the class.
A. True
B. False
37. Once a class is defined, you may use the class as a type specifier.
A. True
B. False