One of the most frustrating but interesting exercises in C is to write a self replicating program. A self replicating program is one which prints out its own source code on execution. Given below is a link to the world's smallest such program in C. Quite ingenious and very very tongue-in-cheek :)
World's Smallest SRP in C
confused?
here's the explanation :)