C programming examples, exercises and solutions for beginners