UP ONE LEVEL:
ENEL 339 Fall 1999 Home Page
ENEL 339 Fall 1999 Final Examination Information
Author: Steve Norman
Last modified: Thu Dec 9 15:18:08 MST 1999
Contents
Introduction
This page is aimed at providing some information
about the format and content of the final examination.
A lot of text has been adapted from the page that
provided advance information about the midterm,
so you may experience some deja vu when
reading this page.
[back to top of document]
Exam Topics
First, let me state a general principle:
The exam will focus mainly on topics that were
heavily emphasized in lectures and labs.
I am not going to make a lot of marks depend on
topics that were given very little coverage in lectures and labs.
The exam will cover all material up to and including Lab[11] and
the lecture of Wednesday, Dec. 8, with the following exceptions:
Most of the questions will be on topics covered in Lab[7] or
later, because topics from Lab[6] and earlier were tested
on the midterm.
However, there will probably be a few exam questions on material
from the first part of the course.
[back to top of document]
Exam Format
As stated on the Course Outline:
-
the exam is closed-book--you
are not allowed to take any books or notes to your seat;
-
you are not allowed to use a calculator or computer during
the exam.
The exam will consist of many short questions.
Questions will be of the following types:
- You will have to write function definitions or other
short segments of C or C++ to do specific tasks.
In each case it will be clearly stated which of C or C++
you must use.
- You will have to draw diagrams and/or
predict program output to show that you know how a
given program works.
- You may have to write very short paragraphs
(roughly two or three sentences) to show that you
understand key terms and concepts from the course.
Problems where you have to write a medium-size program from scratch--like
the `Quux Boat Race' lab exercises are good tests of your programming
ability but are too long and complex to be exam problems.
The same applies to Lab[11] Exercise C,
a relatively simple exercise in file I/O--it takes
too long to be an exam problem.
Such problems will not appear on the exam.
(So any problem that asked you to do file I/O
would have to ask for something very simple.)
You will write all of your answers on the question paper,
in spaces provided for answers.
[back to top of document]
Reference material
In order to help you recall C++ syntax quickly during the exam,
and in order that you don't have to memorize the interfaces to
a lot of C library functions,
you will be given a very small booklet of reference material
along with the exam paper.
The reference material will include:
- The files OLList.h
and OLList.cpp from
Lab[9] Exercise A.
- Function prototypes and documentation for the following
C library functions:
malloc,
free,
fopen,
fclose,
fgetc,
fputc,
fgets,
fputs.
[back to top of document]
Library functions (other than those documented in the reference material)
You are expected to know how to use the following C library
functions:
strcpy, strcat, strlen, exit.
These functions are also available in C++.
You are expected to know the various possible outcomes
of the following statement in C:
nscan = scanf("%d", &x);
where nscan and x are int variables.
You are also expected to know how to use the C++ expressions
cin.fail() and cin.eof().
If you are asked to use any other library functions,
such as functions from <math.h>,
you will be given
documentation for the functions you need.
[back to top of document]
Suggestions for preparation
Here are suggestions for review:
- Review lecture notes and course handouts carefully.
The handouts related to memory organization are
especially important.
Many of the `Read This First' sections in lab handouts
contain useful information.
- Re-do lab exercises using pencil and paper,
especially those exercises that you found difficult
when you first did them.
Practice writing complete function definitions with
pencil and paper--writing code by hand is a bit different
from typing code in a text editor, and it's obviously
an important skill to develop for tests and exams.
- Use the textbook to get background information when
you find a particular topic difficult.
Do not attempt to memorize all the textbook
sections listed in your lecture notes
as related reading--that is
a very ineffective way to use your time.
[back to top of document]