1.
What is the data type of the following expression:
7/3
2.
According to the way "MyFunct" is being used below, what is its prototype?
int x,y;
//
//Program logic to fill x and y with data here
//
MyFunct(x, y);
Are you paying attention Back Row?!?
3.
In C, a logical AND is indicated by what operator?
a) &&
b) ||
c) ++
d) None of the above
4.
What information must be passed to the STRCPY() library routine?
a) The length of each string, and the address of each string.
b) The address of each string.
c) The length of one of the strings.
d) None of these
5.
Given the following declaration:
int Values[4]={1,2,3,4};
What value will be returned if the expression "*(Values+2)" is evaluated?
a) 2
b) 1
c) 3
d) Insufficient information given to solve problem.
6.
What will be the output of the following FOR loop?
for(i=0 ; i<5 ; i++)
{
if (i==2) break;
printf("%d", i);
}
a) 0 1 2 3 4
b) 1 2 3 4 5
c) 1 3 4 5
d) None of the above
7.
What are the objects in programming?
a) The computer's instructions
b) The data
c) The constants
d) None of the above
8.
In order to solve a problem using a programming language, what must
be done first ?
a) Determine an algorithm that solves the problem
b) Write computer source code instructions
c) Define the problem
d) None of the above
9.
A 'for' loop makes its test:
a) At the top of the loop
b) At the bottom of the loop
c) Either the top or the bottom of the loop, as the programmer desires
d) None of the above
10.
Given the following declaration:
int Values[4]={1,2,3,4};
What value will be returned if the expression "*Values" is evaluated?
a) 2
b) 1
c) &Values[0]
d) 4
e) None of these
11.
Given the following declaration:
struct Complex
{
double re;
double im;
};
double GetMagnitude(Complex* lpStr)
{
//...
}
To access the member 're' within the function, what notation would be used?
a) lpStr->re
b) lpStr.re
c) re
d) None of the above
12.
Which statement below would correctly allocate an array of 500 integers by using
the 'NEW' operator?
a) int* Array = new int[500];
b) new int Array[500];
c) Array[500] = new int;
d) None of the above
13.
Why is it important to open a file in the binary mode when reading and writing in-memory
contents such as structures?
a) To avoid undesired translation of certain memory content values
b) To allow automatic error checking of the file contents by the operating system
c) To minimize disk space requirements
d) None of the above
14.
Which standard library function below is used to move the file position indicator when
implementing a random-access binary file system?
a) fopen()
b) fseek()
c) fputs()
d) None of the above
15.
The pointer value obtained from the 'FOPEN()' function (when used to open a
disk file) is often referred to by programmers
as a/an:
a) Array
b) Structure
c) Handle
d) None 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 stream?
a) A path of communication between a program and the operating system
b) A method for writing to the video screen
c) A method for checking the contents of variables
d) None of the above
18.
What is the default access type for members of a class?
a) Public
b) Private
c) Protected
d) None of the above
19.
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
20.
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
21.
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
22.
Supposed that an array of CDonut objects called "OurDonuts" has been instantiated dynamically. What is the correct method for
deleting the array from memory?
a) delete OurDonuts;
b) delete []OurDonuts;
c) delete AllDonuts;
d) None of the above
23.
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
24.
The functions that are part of Class objects are called the:
a) Data members
b) Elements
c) Methods
d) None of the above
25.
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
26.
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
27.
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
28.
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
29.
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
OK, just one more question...are you ready?
30.
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
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!