Personally I feel that pretty much any of the typically-cited C books are too heavy for this purpose. What you really want is a Learn C in 21 Days type of book, that will walk you through the build system as well as the basic of the C language. Even that may be too heavy - a well-written online tutorial would probably be a superior solution. Sadly, I haven't needed to look at "Intro to C" material for a very long time, so I can't really comment on what might be appropriate resources available these days.
When reversing it doesn't help you if you know what a single instruction is doing. You need to be able to recompile the program in your head, and translate it back to high-level logic. You need far more knowledge of C than just the 'learn C in 21 days' stuff if you really want to start reverse engineering.
As a side note, it is (nearly) impossible for something that hasn't changed in almost 30 years (k&r) to keep up with something as dynamic as a program language. Even if the standard hadn't changed, the way a language is used is practically guaranteed to change over a period that long. Although, as somebody else said, the exercises in k&r are great and it covers a lot of interesting information, but does seem pretty light.
In any case, there was definitely a network that was being used by a lot of people by 1988.
The first commercial ISP in the U.S. was founded in 1989.[1] Until then, only a few people in universities and the tech and defense industries had access to the internet. According to this chart[2], the number of internet hosts in 1992 is barely distinguishable from zero on today's scale.
[1] https://en.wikipedia.org/wiki/Internet_service_provider#Hist...
[2] https://en.wikipedia.org/wiki/File:Number_of_internet_hosts....
To learn C -- I'd recommend LCTHW.
> Too many factual problems and a presentation that gets you to do things wrongly before being shown how to do it correctly, and not even always then.
Eh?? Isn't that the whole point of "Learn __ the Hard Way"? ie., by making mistakes and learning from them?
The main critique of Zed seems to be that he didn't say it was impossible to protect a C function from the caller. So what? There is a big difference between his suggested style and the style you'd get from an uncritical reading of K&R, even though neither is 100% safe from the caller.
The gist of it was that K&R ignores the safety problems in C and there is no discussion of the habits/constructs seasoned C programmers have developed to make sure their code is safe. Of course, many of those habits were developed after K&R, but that's why we need revisions and new sources.
In its place, Zed Shaw (the author), updated Learn C the Hard Way to concentrate on using C safely -- it is an awesome way for a newbie to learn C. Even if you don't agree (and want to use K&R), read this alongside it.
http://c.learncodethehardway.org/book/