salve,
sto cercando di scrivere questo codice utilizzando struct . Solo che nel momento che eseguo il programma e inserisco il numero degli studenti, devo inserire due volte l' input altrimenti il programma non continua l'esecuzione, e poi quando arrivo all'inserimento dell' "anno" salta e mi chiede direttamente il nome (inizia un nuovo ciclo).
Dove sbaglio? .....grazie
codice:#include <stdio.h> struct studente { char cognome[10]; char nome[20]; int anno; char tipo[1]; }; void leggi(int n , struct studente Vet[]); int main (void){ int N; struct studente V[N]; printf("Inserisci il numero degli studenti\n "); scanf("%d\n",&N); leggi(N,V); return 0; } void leggi(int y , struct studente Vet[]){ int i; for(i=0;i<y;i++){ printf("Inserisci nome\n"); scanf("%s\n",&Vet[i].nome); printf("Inserisci Cognome\n"); scanf("%s\n",&Vet[i].cognome); printf("Inserisci tipo abbonamento A annuale M mensile\n"); scanf("%s\n",&Vet[i].tipo); printf("Inserisci anno\n"); scanf("%d\n",&Vet[i].anno); } }

Rispondi quotando
il whitespace a fine scanf non funziona, perché la scanf continua ad aspettare a ritornare finché riceve whitespace, per cui non ritorna finché non vengono inseriti caratteri non-whitespace. Chiedo scusa per la confusione.
