A lot of good comments; it's clear people were really thinking about it! This is a classic problem that shows up in different guises and is still debated.
First, some preliminaries. In the problem, I tried to define "surprise" as not knowing which day the quiz was. I should have added "at any time prior to the quiz day" just to be clear. Given the problem's particular definition, saying that there will be a "surprise" quiz sometime next week is not contradictory.
I'm also going to work from the assumption that the professor didn't intentionally lie to them. One might assume the opposite, but once you assume that the problem itself contains lies, you might as well assume that the problem didn't exist. (If you can demonstrate that there's an inherent contradiction, that's different.) Plus, the professor's original statements (there was a quiz and it's timing was a surprise) came true.
I'd like to consider two weaknesses within the problem.
(This was correctly identified by kuddlepup, traveller_blues, twopiearr, and bogglerat, at least.)
Flaw in the Students' "Proof"
Time is a slippery thing to combine with formal logic. The students' reasoning confused future knowledge with present knowledge. If we expand the students' logic premises, it becomes a bit more obvious:
IF it is Thursday night AND the quiz hasn't happened THEN the quiz occurs on Friday.
(Since this relies on it being Thursday, we could predict on Thursday a Friday quiz. Thus the quiz cannot be on Friday, as they concluded. But, we can only know this on Thursday.)
IF it is Wednesday night AND the quiz hasn't happened AND the quiz cannot be on Friday THEN the quiz occurs on Thursday.
(The students concluded that all of the atecedant conditions here are true. Assume the first two, for the sake of argument. But the third, that Friday is ruled out, came from our previous logical step. During that step, we assumed that it was now Thursday night; in this step, we assumed that it's now Wednesday night!)
So the logic of the students (as I presented it) is undone by some minor but contradictory assumptions.
(I think that ristin, pippinbear, tafyrn, and xolo were all heading in this direction. Some good explanations, too!)
True Statements May Be Unprovable
This problem is entangled with Godel's Incompleteness Theorem, as are most self-referential logic puzzles (e.g. "This sentence is false."). Basically, it's possible to have a logically consistent collection of statements yet be unable to prove some things within that system.
The students' logic was misapplied. They assumed that they could deduce which day the quiz was, thereby negating the surprise. Nowhere did the problem say that the quiz could be predicted.
In fact, the problem itself stated that the quiz would be a surprise, thus ruling out this avenue of thought! This is where some people (mistakenly, I think) come to the conclusion that the professor lied: If the students could deduce which day the quiz was, then the professor's assertion that it would be a surprise is false. But I think they cannot.
Can we demonstrate that the students cannot predict the quiz?
Let's take these statements:
(A) There is a quiz
(B) The quiz is/will be a surprise
(C) The day of the quiz is known
(D) It is possible to deduce the day of the quiz
The problem basically gives us the following axioms:
A ("there will be a surprise quiz next week")
B ("there will be a surprise quiz next week")
B -> !C ("It will be a 'surprise' because they won't know on which day he will give it.")
Note that it doesn't tell us about D.
Based on definitions, we can also say:
D -> C ("IF it is possible to deduce the day of the quiz THEN the day of the quiz is known." We're assuming these are good logic students. :)
Now, using this information:
1. Given B
2. Given B -> !C
3. Thus !C
4. Given D -> C
5. Thus !D
That is, since we know statement C is false, D must likewise be false. (Otherwise, the rule D -> C would be contradictory.)
Thus it is not true that it is possible to deduce the day of the quiz. The students were overly optimistic.
Anyhow, that's my analysis of this one. Please feel free to post alternate approaches, gaps in my reasoning, etc. And thanks for the great comments on the puzzle! (Yay! I've got all these clever readers! :)