(*) Caveat: It must be a small challenge involving a relatively simple task. I don't have a lot of time to waste on this.
Nice caveat. Let me rephrase that another way for you: it is difficult to implement complicated functionality in C. Indeed, this is one reason to use higher level languages. You can achieve more in less time.
Aren't you glad you're not getting all the government you pay for now?