You are on page 1of 13

Starting Out with C++ From Control

Structures through Objects Brief


Version 8th Edition Gaddis Test Bank
Visit to download the full and correct content document: https://testbankdeal.com/dow
nload/starting-out-with-c-from-control-structures-through-objects-brief-version-8th-edit
ion-gaddis-test-bank/
Starting Out with C++ from Control Structures to Objects, 8e (Gaddis)
Chapter 7 Arrays

7.1 Multiple Choice Questions

1) Unlike regular variables, these can hold multiple values.


A) constants
B) named constants
C) arrays
D) floating-point variables
E) None of these
Answer: C

2) The individual values contained in array are known as ________.


A) parts
B) elements
C) numbers
D) constants
E) None of these
Answer: B

3) To access an array element, use the array name and the element's ________.
A) data type
B) subscript
C) name
D) value
E) None of these
Answer: B

4) Which of the following is a valid C++ array definition?


A) int array[0];
B) float $payments[10];
C) void numbers[5];
D) int array[10];
E) None of these
Answer: D

1
Copyright © 2015 Pearson Education, Inc.
5) The statement:

int grades[ ] = { 100, 90, 99, 80};

shows an example of:


A) default arguments
B) an illegal array declaration
C) an illegal array initialization
D) implicit array sizing
E) None of these
Answer: D

6) By using the same ________ you can build relationships between data stored in two or more arrays.
A) array name
B) data
C) subscript
D) arguments
E) None of these
Answer: C

7) The name of an array stores the ________ of the first array element.
A) memory address
B) value
C) element number
D) data type
E) None of these
Answer: A

8) A two-dimensional array is like ________ put together.


A) an array and a function
B) several identical arrays
C) two functions
D) two arrays of different types
E) None of these
Answer: B

9) A two-dimensional array can be viewed as ________ and ________.


A) rows, columns
B) arguments, parameters
C) increments, decrements
D) All of these
E) None of these
Answer: A

2
Copyright © 2015 Pearson Education, Inc.
10) If you leave out the size declarator in an array definition:
A) you must furnish an initialization list
B) you are not required to initialize the array elements
C) all array elements default to zero values
D) your array will contain no elements
Answer: A

11) Which of the following is a valid C++ array definition?


A) int scores[0];
B) float $payments[10];
C) int readings[4.5];
D) int scores [10];
E) None of these
Answer: D

12) An element of a two-dimensional array is referred to by ________ followed by ________.


A) the array name, the column number of element
B) the row subscript of the element, the column subscript of the element
C) a comma, a semicolon
D) the row subscript of element, the array name
E) None of these
Answer: B

13) When writing functions that accept multi-dimensional arrays as arguments, ________ must be
explicitly stated in the parameter list.
A) all dimensions
B) all but the first dimension
C) the size declarator of the first dimension
D) all element values
E) None of these
Answer: B

14) An array can store a group of values, but the values must be:
A) the same data type
B) each of a different data type
C) constants
D) integers
E) None of these
Answer: A

15) An array's size declarator must be a ________ with a value greater than ________.
A) number, one
B) number, zero
C) constant integer expression, zero
D) variable, -1
E) None of these
Answer: C

3
Copyright © 2015 Pearson Education, Inc.
16) Subscript numbering in C++________.
A) can be set at runtime
B) can begin with a programmer-defined value
C) varies from program to program
D) begins with zero
E) None of these
Answer: D

17) Arrays may be ________ at the time they are ________.


A) resized, executed
B) re-scoped, deleted
C) initialized, declared
D) pre-compiled, typecast
E) None of these
Answer: C

18) Given the following declaration, where is the value 77 stored in the scores array?

int scores[] = {83, 62, 77, 97};

A) scores[0]
B) scores[1]
C) scores[2]
D) scores[4]
Answer: C

19) An array can easily be stepped through by using a ________.


A) for loop
B) reference variable
C) named constant
D) null value
E) None of these
Answer: A

20) The range-based for loop, in C++ 11, is designed to work with a built-in variable known as the
________.
A) counter variable
B) i variable
C) iterator
D) range variable
E) None of these
Answer: D

4
Copyright © 2015 Pearson Education, Inc.
21) To assign the contents of one array to another, you must use ________.
A) the assignment operator with the array names
B) the equality operator with the array names
C) a loop to assign the elements of one array to the other array
D) Any of these
E) None of these
Answer: C

22) To pass an array as an argument to a function, pass the ________ of the array.
A) contents
B) size, expressed as an integer
C) name
D) value of the first element
E) None of these
Answer: C

23) A two-dimensional array can have elements of ________ data type(s).


A) one
B) two
C) four
D) Any of these
E) None of these
Answer: A

24) A two-dimensional array of characters can contain ________.


A) strings of the same length
B) strings of different lengths
C) uninitialized elements
D) All of these
E) None of these
Answer: D

25) A(n) ________ can be used to specify the starting values of an array.
A) initialization list
B) array name
C) subscript
D) element
E) None of these
Answer: A

26) The ________ is automatically appended to a character array when it is initialized with a string
constant.
A) array name
B) number of elements
C) value of the first element
D) null terminator
E) None of these
Answer: D

5
Copyright © 2015 Pearson Education, Inc.
27) An array with no elements is ________.
A) legal in C++
B) illegal in C++
C) automatically furnished one element, with a value of zero
D) automatically furnished one value—the null terminator
E) None of these
Answer: B

28) An array of string objects that will hold 5 names would be declared using which statement?
A) string names[5];
B) string names(5);
C) string names5;
D) String[5] names;
E) None of these will work.
Answer: A

29) It is ________ to pass an argument to a function that contains an individual array element, such as
numbers[3].
A) illegal in C++
B) legal in C++
C) not recommended by the ANSI committee
D) not good programming practice
E) None of these
Answer: B

30) What is the last legal subscript that can be used with the following array?

int values[5];

A) 0
B) 5
C) 6
D) 4
Answer: D

31) How many elements does the following array have?

int bugs[1000];

A) 1000
B) 999
C) 1001
D) Cannot tell from the code
Answer: A

6
Copyright © 2015 Pearson Education, Inc.
32) What will the following code display?

int numbers[] = {99, 87, 66, 55, 101 };


cout << numbers[3] << endl;

A) 55
B) 66
C) 101
D) 87
Answer: A

33) What will the following code display?

int numbers[] = { 99, 87, 66, 55, 101 };


for (int i = 1; i < 4; i++)
cout << numbers[i] << endl;

A) 99
87
66
55
101

B) 87
66
55
101

C) 87
66
55

D) Nothing. This code has an error.


Answer: C

34) What will the following code display?

int numbers[4] = { 99, 87 };


cout << numbers[3] << endl;

A) 87
B) 0
C) garbage
D) This code will not compile
Answer: B

7
Copyright © 2015 Pearson Education, Inc.
35) What will the following code do?

const int SIZE = 5;


double x[SIZE];
for(int i = 2; i <= SIZE; i++)
{
x[i] = 0.0;
}

A) Each element in the array is initialized to 0.0


B) Each element in the array, except the first, is initialized to 0.0
C) Each element in the array, except the first and the last, is initialized to 0.0
D) An error will occur when the code runs
Answer: D

36) Which statement correctly defines a vector object for holding integers?
A) vector v<int>;
B) int vector v;
C) int<vector> v;
D) vector<int> v;
Answer: D

37) Which statement correctly uses C++ 11 to initialize a vector of ints named n with the values 10 and
20?
A) vector n<int>(10, 20);
B) vector<int> n = {10, 20};
C) vector<int> n { 10, 20 };
D) int vector n ({10}, {20});
Answer: C

38) What does the following statement do?

vector<int> v(10);

A) It creates a vector object and initializes all of its elements to the value 10.
B) It creates a vector object with a starting size of 10.
C) It creates a vector object and initializes the first element with the value 10.
D) It creates a vector object that can store only values of 10 or less.
Answer: B

8
Copyright © 2015 Pearson Education, Inc.
39) What will the following C++ 11 code display?

vector<int> numbers { 3, 5 };

for (int val : numbers)


cout << val << endl;

A) 5
5
5

B) 3
3
3
3
3

C) 3
5

D) Nothing. This code has an error.


Answer: C

40) What does the following statement do?

vector<int> v(10, 2);

A) It creates a vector object and initializes all the first two elements with the values 10 and 2.
B) It creates a vector object with a starting size of 2 and the first element initialized with the value 10.
C) It creates a vector object with a starting size of 10 and the first element initialized with the value 2.
D) It creates a vector object with a starting size of 10 and all elements are initialized with the value 2.
Answer: D

41) This vector function is used to insert an item into a vector.


A) insert_item
B) add_item
C) store
D) push_back
Answer: D

42) This vector function returns the number of elements in a vector.


A) size
B) num_elements
C) elements
D) length
Answer: A

9
Copyright © 2015 Pearson Education, Inc.
43) This vector function removes an item from a vector.
A) remove_item
B) delete_item
C) erase
D) pop_back
Answer: D

44) This vector function returns true if the vector has no elements.
A) has_no_elements
B) null_size
C) empty
D) is_empty
Answer: C

7.2 True/False Questions

1) True/False: The amount of memory used by an array depends upon the array's data type and the
number of elements in the array.
Answer: TRUE

2) True/False: The statement:

double money[25.00];

is a valid C++ array definition.


Answer: FALSE

3) True/False: An array initialization list must be placed on one single line.


Answer: FALSE

4) True/False: Assume array1 and array2 are the names of arrays. To assign the contents of array2
to array1, you would use the following statement.

array1 = array2;

Answer: FALSE

5) True/False: When you pass an array as an argument to a function, the function can modify the
contents of the array.
Answer: TRUE

6) True/False: C++ limits the number of array dimensions to two.


Answer: FALSE

7) True/False: If you attempt to store data past an array's boundaries, it is guaranteed that the compiler
will issue an error.
Answer: FALSE

10
Copyright © 2015 Pearson Education, Inc.
8) True/False: An individual array element can be processed like any other type of C++ variable.
Answer: TRUE

9) True/False: In C++ 11, you cannot use a range-based for loop to modify the contents of an array
unless you declare the range variable as a reference.
Answer: TRUE

10) True/False: In C++ 11, the range-based for loop is best used in situations where you need the
element subscript for some purpose.
Answer: FALSE

11) True/False: Although two-dimensional arrays are a novel idea, there is no known way to pass one to
a function.
Answer: FALSE

12) True/False: Each individual element of an array can be accessed by the array name and an element
number, called a subscript.
Answer: TRUE

13) True/False: If an array is partially initialized, the uninitialized elements will be set to zero.
Answer: TRUE

14) True/False: A vector object automatically expands in size to accommodate the items stored in it.
Answer: TRUE

11
Copyright © 2015 Pearson Education, Inc.

You might also like