Yo
As far as self learning, there are a lot of resources out there.
There are several free UNIVERSITY courses you can take online. I believe Harvard's CS50 is one. My brother took that before and it seemed pretty damn good to me.
Do you need to learn C for any particular reason? A project or job? If not, don't limit yourself to C. If you are brand new to programming, your best bet is to learn good "programming practices" from the ground up. As (some) will tell you, your language choice is irrelevant for learning purposes (but...MAYBE stay away from assembler for a bit. At least until you encounter pointers and know some data structures!)
As far as your final question, a single % in that conditional statement refers to the modulus operator ->
http://en.wikipedia.org/wiki/Modulo_operation