Assuming you're using ASCII characters, each digit and alphabet has an integer representation. If you Google for ASCII code you'll see that the lower case characters are numbered sequentially and same for the upper case letters and the digits. You only need to check which range the character you're given falls between to know whether it's a lowercase, uppercase or digit.
Depending on how your school reacts to this (e.g. would they accept the formally correct answer and update the problem?), you could use the two-argument isalpha/isdigit functions defined in the header <locale> instead of their single-argument counterparts from <cctype>/<ctype.h>