// PROGRAMMA 1 // // esempio di uso di scanf("%c"). // Attenzione: la lettura di caratteri con %c può essere problematica // %c è l'unico formato che non si aspetta un codice formattato int, float, string. // %c legge anche il carattere CR della lettura precedente. // C'è quindi un carattere CR che deve essere letto: leggere un carattere può voler dire di leggere il carattere CR di una lettura precedente! // in questo caso può essere necessario aggiungere una lettura scanf // // come in questo esempio #include void main(){ struct Persona{ char nome[20]; char cognome[20]; char sesso; int eta; }; struct Persona pers_1; char nn[20]; char cc[20]; char ss; int ee; printf("dimmi il tuo nome\n"); scanf("%s",nn); printf("dimmi il tuo cognome\n"); scanf("%s",cc); printf("dimmi il tuo sesso\n"); scanf("%c",&ss);//leggo il CR del comando precedente e lo metto in ss scanf("%c",&ss);//riscrivo ss con il carattere da leggere printf("dimmi la tua eta\n"); scanf("%d", &ee); printf("nome: %s\n", nn); printf("cognome: %s\n", cc); printf("eta\': %d\n", ee); printf("sesso: %c\n", ss); }