While I don't have your course syllabus in front of me, I can safely say you're probably making it too hard on yourself. No need to go character-by-character. Read the integer as an actual integer (however you learned to do that), then use the modulus (%) operator to determine the last digit, base 10.
i.e.
Code:
int thenumber;
int lastdigit;
thenumber = read_number_somehow();
lastdigit = thenumber%10;
Your question about maximum integer size in C is certainly valid, however if this is your very first C program, it isn't immediately relevant and I'd just wait until that is properly explained in the course of your instruction, whether it's self-taught or otherwise.