K&R is not a good book to learn how to program from. SICP on the other hand is[1], it teaches how to create abstractions among other things. K&R just shows you how C works. Also, this person has a deep understanding in mathematics and should have no problems digesting an introductory book, such as SICP, at all.