Salve a tutti :-)

allora stavo buttando giu qualkosa per fare un po di pratica e ho riscontrato un piccolo problema, ovvero, come primo codice ho scritto questo.:

codice:
int main()
{

    int sel;
     
    system("color 0a"), ("cls");
    
    do
    {
    
    printf("\t\t *** Gestore Spesa ***\n\n");             
    printf("\t 1. Aggiungi Elemento\n\t 2. Modifica Elemento\n\t 3. Contralla Lista Negozio\n\t 0. Esci\n\nSelezionare Opzione: ");
    
    
    scanf("%d", &sel);
    
    
    
    switch (sel)
    {
           case 0: break;
           case 1: 
                system("cls");
                printf ("case 1");
                break;
           
           case 2: 
                system("cls");
                printf ("case 2");
                break;
                
           case 3:
                system("cls");
                printf ("case 3");
                break;     
           
           default:
                   system ("cls");
                   printf(" \n\tErrore - ! Opzione non riconosciuta !\n\n");
                
    }
    
    } while ( sel!= 0);
    
    
    printf("\n\n");
    system("pause");
}
successivamente ho fatto una legera modifica perche' quando viene inserito una lettera inceve che un numero si inceppa il programma, pertanto ho scritto questo:

codice:
int main()
{

    char select;
    int sel;
     
    system("color 0a"), ("cls");
    
    do
    {
    
    printf("\t\t *** Gestore Spesa ***\n\n");             
    printf("\t 1. Aggiungi Elemento\n\t 2. Modifica Elemento\n\t 3. Contralla Lista Negozio\n\t 0. Esci\n\nSelezionare Opzione: ");
    
    
    scanf("%c", &select);
    
    
    sel = (int)select - 48;
    
    switch (sel)
    {
           case 0: break;
           case 1: 
                system("cls");
                printf ("case 1");
                break;
           
           case 2: 
                system("cls");
                printf ("case 2");
                break;
                
           case 3:
                system("cls");
                printf ("case 3");
                break;     
           
           default:
                   system ("cls");
                   printf(" \n\tErrore - ! Opzione non riconosciuta !\n\n");
                
    }
    
    } while ( sel!= 0);
    
    
    printf("\n\n");
    system("pause");
}
ma qui il problema e come se i breack non funzionano....qualkuno mi sa dire il xke?

p.s.
alla linea
codice:
sel = (int)select - 48;
volevo scrivere:
codice:
(int)sel = (int)select - 48;
ma il compilatore mi da errore