1.
Given that A=25 and B=10, what will the output of the fragment
below be?
if (a<20)
printf("Too Small.");
else
if (b >= 10)
printf("Everything is OK.");
else
printf("B is too small.");
2.
What is something that can not be done with a VOID pointer?
Are you paying attention Back Row?!?
3.
What is special about the NULL pointer value?
a) The NULL pointer automatically dereferences the target object.
b) Arrays can only be accessed if a NULL pointer is used.
c) The NULL pointer is obtained when a disk I/O error occurs.
d) None of these
4.
A certain function has the following prototype:
float MyFunct(int x, float z);
Which statement below correctly calls this function? Assume that A and B are type INT, and
C is type FLOAT.
a) MyFunct( a, b);
b) a = MyFunct( 0, a);
c) c = MyFunct( a, 1.41459 );
d) None of the above
5.
How are comments marked in C++?
a) With the ';' character
b) With either '//' (start of line) or '/* .. */'
c) With the '++' sequence
d) None of the above
6.
What is the meaning of the following declaration?
float* pVar;
a) pVar is a pointer to data of type FLOAT
b) pVar is a floating point variable
c) pVar is meant to have an initial value of zero
d) None of these
7.
What output will be produced by the DO loop below?
int i=2;
do {
i++;
if (i==7) continue;
printf("%d", i);
}
while(i<10);
a) 3 4 5 6 7 8 9
b) 2 3 4 5 6 7 8
c) 3 4 5 6 8 9 10
d) None of the above
8.
When is a C expression considered to be 'true?'
a) When it is non-zero
b) When it is zero
c) Whenever it is not false
d) None of the above
9.
What is the result of evaluating the following expression?
22/7. + 5/3
a) 4.142857...
b) 4.809523...
c) 5
d) None of the above
10.
If A=1 upon entry into the code below, what will be output?
switch (a)
{
case 1: printf("TV is on.");
case 2: printf("Stereo is on.");
break;
case 3: printf("Room lights dimmed.");
break;
default: printf("Say what?");
break;
}
a) TV is on.
b) TV is on. Stereo is on.
c) Room lights dimmed.
d) Say what?
11.
Which standard stream below could be used to talk to the video display?
a) stdprn
b) stderr
c) stdout
d) stdaux
e) None of the above
12.
What value is returned by the NEW operator when a memory allocation request fails?
a) -1
b) NULL pointer
c) 0xffff
d) None of the above
13.
What must be done with any objects created through the 'NEW' operator prior to
termination of a program?
a) The objects must be tested to see if they hold proper values
b) The objects must be tested with the 'OLD' operator
c) The objects must be deleted from memory
d) None of the above
14.
What must be done with open files prior to ending a program?
a) Close them
b) Write the final information into them
c) Check their contents
d) None of the above
15.
Which of these is a disadvantage of passing structures to functions by value?
a) Two copies of the structure occupy memory during the function's execution
b) Copying the structure is a relatively slow process
c) The function can not modify the original values in the structure
d) All of the above
16.
Given the following declaration:
struct Complex
{
double re;
double im;
};
Complex Values[10];
If a DOUBLE uses 8 memory locations, how much memory is used up?
a) 160
b) 80
c) 40
d) None of these
17.
What is a structure ?
a) A user-defined data type that can contains aggregate data
b) A special type of C pointer that can not be dereferenced directly
c) Another name for a C program
d) None of these
18.
What is the default access type for members of a class?
a) Public
b) Private
c) Protected
d) None of the above
19.
The method of a class that is called automatically when objects of that class
are instantiated is called the:
a) Constructor
b) Initializer
c) Destructor
d) None of the above
20.
How does C++ discriminate between overloaded functions -- in other words, how does C++ know which version
of an overloaded function to call?
a) By looking at the returned data type and comparing it with how the caller is using the function
b) By examining the parameter list and comparing it with the caller's parameters
c) By counting the number of times the function has been called
d) None of the above
21.
The functions that are part of Class objects are called the:
a) Data members
b) Elements
c) Methods
d) None of the above
22.
Suppose that a function has the following prototype:
void DonutLove(int& nLamars );
How will the calling function be passing its value?
a) By reference (implied pointer)
b) By pointer (explicit pointer operation required)
c) By value
d) None of the above
23.
In what file would you find the definition (prototypes) for a class called CGhostBuster ?
a) GhostBuster.h
b) GhostBuster.cpp
c) CGhostBuster.c
d) None of the above
24.
Which statement will correctly and dynamically allocate room for 13 (baker's dozen) CDonut objects?
a) CDonuts* NoSprinkles = new CDonuts[13];
b) CDonuts NoSprinkles[13];
c) NoSprinkles[13]->CDonuts[13];
d) None of the above
25.
If a class member is defined as "private," who can access it?
a) Only functions within the same program
b) Any function within any process running on the computer
c) Only methods within the class itself
d) None of the above
26.
Suppose that the following overloaded function prototypes are given:
A) void Homer(int, char, float);
B) int Homer(double);
C) float Homer(double, int, int, double);
Which version will be called by the program statement:
Homer(35,'A', 3.14159);
a) Version "A"
b) Version "B"
c) Version "C"
d) Insufficient information
27.
What parameter passing method of C++ gives the advantage of passing values by
pointer, yet avoids the use of pointer notation in both the calling and called functions?
a) Passing by value
b) Passing by reference
c) Passing by array
d) None of these
28.
Given the class definition:
Class CGeek
{
public:
int m_nNeckties;
void TalkGibberish();
}
What is the correct prototype for the default constructor?
a) int Geek(char*);
b) void ~CGeek();
c) CGeek();
d) None of these
29.
What is the primary difference between objects defined with Class versus
those defined with Struct?
a) The Class objects have active behaviors
b) The Struct objects have built-in data protection
c) There's no functional difference between them
d) None of the above
OK, just one more question...are you ready?
30.
Suppose that the following memory allocation is performed:
Class CDonuts MyDonuts[100];
Which statement will execute the method TasteTest() in the sixth element of
the array of objects?
a) TasteTest.MyDonuts[5];
b) MyDonuts[5].TasteTest();
c) CDonuts.TasteTest.MyDonuts(5);
d) None of the above
Extra information for Exam 1:
You will be asked to write two short programs. In one program, you will instantiate an array of
objects of a predefined type, and call one or more methods of each object. In the second program, you
will write the code to overload two of the built-in operators for objects of a class. Make sure
you know and understand the "formulas" for overloading operators!
Grade Exam!