For those of us who actually ship code, I'd like to suggest khash[1], which is a pretty nice implementation of a hash table in C. It uses lot's of macros, so if you're looking for a brain teaser you will be satisfied as well :)
[1]: http://attractivechaos.github.io/klib/#Khash%3A%20generic%20...