Cioè in pratica potrei fare qualcosa del tipo
codice:
char string[100];
char choiceC
int choiceN;

while ( gets(string) != NULL)
    if ( sscanf(string, "%d", &choiceN) == 1) //allora è un numero e lo switcho
        //....
    else if ( sscanf(string, "%c", &choiceC) == 1)  //allora è un carattere
        //controllo se è il carettere di uscita....
    else
        //opzione non valida