Not quite what you want: 'A' is less that 'Z' and less than 'a'!
if ( ((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z')))
{
}
if ((c >= '0') && (c <= '9'))
{
}
And you can check for the other print able characters quite easily.
But...
if ((c >= ' ') && (c <= '~'))
{
}
Might be easier.