There are a bazillion books on C programming out there. To limit you search, try searching for programming books for C and specifically the Arduino family of processors. I am biased, but read the reviews for Beginning C for Arduino by Purdum. You can read reviews on the book at Amazon.com. If you click on the cover, you can read the Table of Contents, select a topic, and read a few pages from the book. That and the reviews might help you decide if it suits your way of learning.