CSCI 161 Computer Science II Midterm and Exams
(S26N01)
The course has one midterm and one final exam
Midterm
The midterm will be held in class on Monday March 2nd, with a review session held
during the previous lab (Friday Feb. 27).
The midterm is worth 20% of your final grade, but your midterm mark can be replaced
by your final exam mark if your final exam mark is higher.
The midterm is closed notes, closed book, no dictionaries,
calculators or electronics permitted. The use of earplugs/protection is permitted,
but the use of headphones/headsets (with or without connected devices) is not.
Students will be permitted to bring one 8.5x11" double sided sheet
of notes for the midterm.
The midterm will be a handwritten exam, 80 minutes in length, consisting of
five equally-weighted questions covering all the material from labs and lectures
up to and including the review session of Feb. 27th.
A more precise list of topics will be included here as we get closer to the midterm date:
depending on our pace through the first half of the course we may exclude the OO material from
the midterm.
The final exam will consist of a variety of question forms,
generally chosen from formats similar to:
- show the precise output from the following C++ program...
- given a set of compiler error messages,
identify all the syntax errors in the following C++ program...
- write a complete and correct C++ program to do the following...
- write a C++ function to do the following...
- modify the following program or function to do the following...
- given the prototypes for a set of functions, write a function that
uses them to do ...
- explain the benefits and drawbacks of the following language feature...
- discuss the appropriate use of the following language feature...
Midterm practice questions
These questions are from a mix of old (sometimes very old) finals and midterms, but should give a
good feel for the styles of possible questions.
Final exam
The final exam will be worth 50% of your total grade and will be a 3-hour
paper/pencil exam held at the date/locations specified by VIU's exam booking system
(date/location TBA).
The exam must be written at the time/location specified.
Exceptions will only be made for officially documented illnesses or
emergencies, in which case the student is expected to contact their
instructor as soon as they are able return to university and arrange
for a make-up exam to be taken as soon as possible. Note that the
make-up exam will NOT be the same exam given to the rest of
the class.
The final exam is closed notes, closed book, no dictionaries,
calculators or electronics permitted. The use of earplugs/protection is permitted,
but the use of headphones/headsets (with or without connected devices) is not.
Students will be permitted to bring one 8.5x11" double sided sheet
of notes for the final exam.
The final exam will consist of 10 questions of a variety of forms,
generally chosen from formats similar to:
- show the precise output from the following C++ program...
- given a set of compiler error messages,
identify all the syntax errors in the following C++ program...
- write a complete and correct C++ program to do the following...
- write a C++ function to do the following...
- modify the following program or function to do the following...
- given the prototypes for a set of functions, write a function that
uses them to do ...
- explain the benefits and drawbacks of the following language feature...
- discuss the appropriate use of the following language feature...
A review session will be held during the last lab of the semester (April 10), and the material covered
will consist of course all material up to and including the review session,
including all lectures, lab exercises, the midterm, etc.
You will be expected to understand, debug, and write logically
and syntactically correct C++ programs or code segments using
the language features discussed in labs and lectures to that point.
The best way to prepare is to hone your fluency in C++,
i.e. by doing the labs and assignment and writing lots of small practice
programs.
PRACTICE EXAM AND OLD EXAMS
Practice questions and copies of old exams are posted below,
but those were based on a 3-hour exam (so ours will be roughly half
as long), and the old exams are from course
offerings around 2012/2013: the nature/content of the course has
changed considerably since then so the relevant topics and questions
will also be somewhat different this semester.
Practice final exam #1
Practice final exam #2
Very old (not very representative) past finals:
from 2013
from 2012
Thoughts on additional practice:
This was in response to a question about possible ways to practice
before the final:
I'd definitely start with the two posted practice exams:
First writing them "exam style" then actually coding and
debugging your solutions.
If you've still got time and are looking for more practice
after that, I'd suggest starting with questions/problems from
the latter half of 160, but now implementing your solutions
using classes, and experimenting with the use of try/throw/catch
for error handling.
After that (again, if you still have time), I'd try reworking
some of our list problems, but this time using the standard
template library lists instead of coding them as a linked list
from scratch.