CSCI 112 ICE C++ EXAM


The knowledge and skills required to pass the exam include the imperative and object-oriented aspects of C++, and the

skill to use these concepts in a programming application.

The topics covered include:

1. C++ terminology

2. C++ syntax

3. Classes, including get/set, constructors, copy constructors, and destructors

4. Recursive functions

5. Random number usage

6. The vector class

7. Pointers and dynamic memory allocation

8. Friends, this

9. Operator overloading

10. Inheritance

11. Polymorphism (overloading and virtual functions)

12. Template classes and functions

13. Exception handling

14. Basic search and sort algorithms

Knowledge assumed from CSCI 111 includes:

1. Data types (including the string class), declarations, assignments, expressions

2. Selection and iteration constructs

3. Stream input-output for keyboard, display, and files

4. Switch statement

5. Scope and lifetime

6. Preprocessor usage (specifically the #include statements)

7. Binary to hex, hex to binary, decimal to binary, binary to decimal number conversions

8. Using namespace

9. Functions, function prototypes, and parameter passing

a. Value versus reference parameters

10. Static arrays (one and two-dimensional)

11. structs

12. typedef

13. Enumerations

The exam consists of two parts: a written component focusing on the topics listed above, and a coding assignment

requiring the writing of a program in C++ typical of the “end of semester” projects in CSCI 112. The written exam

consists of fill-in-the-blank, True/False, Multiple Choice, and questions requiring the reading of code segments and

explaining their output, or writing of code segments to perform a specific task (e.g., creating a simple class). The coding

assignment must be completed in two days. The written exam contains approximately 35 questions.

A study resource is the course text: C++ How to Program, Paul Deitel and Harvey Deitel, 8th edition, 2010, Prentice Hall.

ISBN: 978-0-13-866836-9. In addition, other helpful online tutorials are:

http://www.youtube.com/watch?v=WYbeLBVG34I&playnext=1&list=PLA68C1F33757B4A38

http://www.cplusplus.com/doc/tutorial/

http://www.cprogramming.com/tutorial.html