Here are the topic installments arranged with increasing complexity.  Those new to 'C' would probably benefit a journey through the topic links - in numeric order - as seen below:

 

[#1] First command-line session, compilation concepts [#2] Dissecting simple 'C' code & source file elements
[#3] Passing data into our program via 'arguments' [#4] Introducing logic and coding to avoid bugs
[#5] More logic testing with numeric variables [#6] Do you have the char-acter to string them along?
[#7] Should we do - while, or just while, or maybe for? [#8] The point is... pointers are great (and really useful)! 
[#9] If you build the function, it will run [#10] The not-so-lowly 'C' structure
[#11] Basic user input, passing a pointer to a function [#12] Functions that return a value & nested function calls
[#13] Why initialize variables? [#14] Simple file read, file write
[#15] A 'switch' is as good as a 'case', do you need a 'break'? [#16] A sordid tale of spaghetti, goto, and real 'C' programmers
[#17] Compare your A, B, C to your P & Q [#18] George Boole and his pet 'enum', also tokenizing a string
[#19] Multiple logic tests - tread carefully [#20] Writing binary data to file
[#21] Intro to variable scope [#22] Mr. Operating System, can we get some memory?
[#23] File I/O handling - 'append' [#24] Bits, and Nibbles, and Bytes, Oh My!
[#25] 2D arrays; CHAR and INT [#26] Our programmer's lunch: bits & nibbles
[#27] 2D arrays; STRUCT [#28] Make 'C' make great software
[#29] Recurse does not mean swear over & over [#30] Does the flow go over, or under?
[#31] You may love the way 'typedef' improves readability [#32] Re-use, re-work, re-purpose, get re-ward