I'm not sure I understand your question. Do you want programs that are written in C and are of substantial size? Or, do you want problems that are hard to solve so that you may practice developing C programs?
Can you be more specific about what kinds of problems you're looking for in terms of scope and "topic" (like should they be more about algorithms or application design etc.) and how tough they should be?
If you're interested in algorithmic problems, you can find ones of various difficulties on sites like the Spehere Online Judge or the UVA Online Judge. If you're interested in mathematical problems (with programatic solutions), Project Euler has many nice ones (though most of them are pretty tough and generally require more mathematical than programming knowledge).