You have now learned most of the basics of C programming and are ready to start becoming a serious programmer. This is where you go from beginner to expert, both with C and hopefully with core computer science concepts. I will be teaching you a few of the core data structures and algorithms that every programmer should know, and then a few very interesting ones I’ve used in real software for years.
Before I can do that, I have to teach you some basic skills and ideas that will help you make better software. Exercises 27 through 31 will teach you advanced concepts, featuring more talking than coding. After that, you’ll apply what you’ve learned to make a core library of useful data structures.