Oct 23, 2009
Friday, Oct 30 11am-12:15pm
The midterm exam is next Friday in-class.
You may bring your textbooks, notes, handouts, code printouts, etc. to refer to during the
exam. No computers, phones, PDAs, or other electronic devices may be used. We don't
expect you to memorize minutiae and the exam will not focus on them. However, don't
let the "open-book" nature delude you into not preparing. There will not be time to (re-
)learn the material during the exam. You should be facile and knowledgeable enough to
readily answer the questions, relying on your notes only for the occasional detail.
The exam will concentrate on material covered in the labs and assignments. For the
midterm, this means questions that delve into your understanding of strings, pointers,
arrays, function pointers, low-level memory manipulation, and data representation. There
will light coverage of IA32 assembly.
When we ask you to write C code, we will not be picky about syntax errors/oversights
(missing braces around several lines of obviously indented code, forgetting to declare an
integer variable, don't need #include's etc.), but some small subtleties will matter
immensely, e.g., a
is just one character different than
, but there is a chasm of
difference between the two!
You're unlikely to do well on a test if you don't understand the core concepts, but there is
no guarantee about the inverse. Some students who are quite accomplished in practice
don't manage to demonstrate their proficiency in the exam setting. Writing code on paper
with a time limit is not identical to working at the computer. Most students need practice
to adapt their skills. Our recommendation is to get out your pencil and paper and sit down
with some coding problems to write out solutions in longhand. This is much more
valuable than a passive review of the problem and its solution where it is too easy to
conclude "ah yes, I would have done that" only to find yourself very sad during the real
exam when there is no provided solution to agree with!
The questions in this handout are from the midterm I gave last spring in CS107 so you