Beej’s Guide to C Programming tries to lead the reader from complete and utter sheer lost confusion on to the sort of enlightened bliss that can only be obtained though pure C programming.
This is probably one of the most enjoyable programming books I've read in a long time; The chapters on manual memory allocation, pointer arithmetic, and VLAs were my favourites. I also liked the author's sense of humour and his ability to break down topics that might otherwise be too vague, especially for beginners.
I recommend it both for those looking to brush up on their C knowledge and for those just starting out.
Probably not a best book to learn C, but as a person who's not planning to actually write much C code and already knew some of the concepts (e.g. memory management and pointer arithmetics), this was a nice refresher/reference for reading bunch of C code