Salve sono una studentessa al primo anno di Informatica. Sto preparando un esame in c ma ho riscontrato un problema con l'implementazione di un menù, sapreste aiutarmi?
Il codice è questo(inserisco solamente il menù):
codice:
int main(){
char* nomeFile;
int scelta;
lista l;
int continua = 1;
while (continua){
schermoMenuPrincipale(&scelta);
switch(scelta){
case 0: {
continua = 0;
break;
}
case 1: {
printf("Inserisci il nome del file da cui prelevare i dati \n");
scanf("%s", nomeFile);
leggiDaFile(&l, nomeFile);
break;
}
case 2: {
stampa(l);
break;
}
case 3: {
verifica(l);
break;
}
default: {
printf("Operazione non consentita\n");
}
}
}
return 0;
}
void schermoMenuPrincipale(int* pscelta){
printf("----------------------------- \n");
printf("Benvenuto nel Menu Principale \n");
printf("1. LEGGI da file \n");
printf("2. STAMPA \n");
printf("3. MOSTRA IL CAMION CON PIU' CAPACITA' \n");
printf("0. Esci \n");
scanf("%d", pscelta);
return;
}
Praticamente se appena avvio il programma inserisco subito lo '0' il programma si interrompe correttamente ma se prima inserisco un'altra opzione e poi lo '0' non esce! Come mai?