Salve ragazzi, proponendovi il seguente codice:
void menu(struct spese *conti)
{
char controllo; float numero;
do{
printf("Inserisci l'opzione\n");
scanf("%c",&controllo);
switch (controllo)
{
case 'c' : printf("Inserisci l'importo\n");
scanf("%f",&numero);
conti[0].cancelleria=conti[0].cancelleria+numero;
break;
case 't' : printf("Inserisci l'importo\n");
scanf("%f",&numero);
conti[0].telefono=conti[0].telefono+numero;
break;
case 'e' : printf ("Inserisci l'importo\n");
scanf("%f",&numero);
conti[0].elettricita=conti[0].elettricita+numero;
break;
case 'a' : printf("Inserisci l'importo\n");
scanf("%f",&numero);
conti[0].altro=conti[0].altro+numero;
break;
case 'x' : break;}
}
while(controllo!='x');
}
Mi sapreste dire perchè ciò che scrivo nella printf (lasciando perdere che non c'è la descrizione di quello che avviene nello switch, era per comodità) dopo che cicla me lo scrive due volte? In pratica funziona perfettamente ma ad ogni ciclo scrive due volte ciò che c'è nella printf invece di una. Grazie in anticipo per l'aiuto!