Gogeta ss4
26-11-2003, 19:18
Ciao a tutti, oggi mi hanno insegnato come si usano le strutture dati etc etc
Ho fatto un programma, ecco il codice:
#include <stdio.h>
#include <conio.h>
struct alunni
{
char cognome[100];
char nome[100];
int voto;
};
typedef struct alunni s_alunni;
void main()
{
s_alunni classe[3];
int i;
for(i=0;i<3;i++)
{
printf("\nCognome: ");
gets (classe[i].cognome);
printf("\nNome: ");
gets(classe[i].nome);
printf("\nVoto: ");
scanf("%d",&classe[i].voto);
}
for(i=0;i<3;i++)
{
printf("\nCognome: %s", classe[i].cognome);
printf("\nNome: %s", classe[i].nome);
printf("\nVoto: %d", classe[i].voto);
}
getch();
}
Il compilatore non mi da nessun errore, ma quando lancio il programma mi succede una cosa strana, al primo ciclo inserisco cognome , nome e voto senza nessun problema, al secondo ciclo, quando devo riinserire nome cognome e voto mi scrive:
"
Cognome:
Nome: // mi sa inserire il nome saltando il cognome!!:eek: :eek:
E come se al secondo ciclo di inserimento non mi vedrebbe il primo gets e quindi fa 2 printf e poi il gets per inserire il nome.
Dove sta l'errore??
Ecco uno screen Shot:
http://www.games4u.it/struct.JPG
Ho fatto un programma, ecco il codice:
#include <stdio.h>
#include <conio.h>
struct alunni
{
char cognome[100];
char nome[100];
int voto;
};
typedef struct alunni s_alunni;
void main()
{
s_alunni classe[3];
int i;
for(i=0;i<3;i++)
{
printf("\nCognome: ");
gets (classe[i].cognome);
printf("\nNome: ");
gets(classe[i].nome);
printf("\nVoto: ");
scanf("%d",&classe[i].voto);
}
for(i=0;i<3;i++)
{
printf("\nCognome: %s", classe[i].cognome);
printf("\nNome: %s", classe[i].nome);
printf("\nVoto: %d", classe[i].voto);
}
getch();
}
Il compilatore non mi da nessun errore, ma quando lancio il programma mi succede una cosa strana, al primo ciclo inserisco cognome , nome e voto senza nessun problema, al secondo ciclo, quando devo riinserire nome cognome e voto mi scrive:
"
Cognome:
Nome: // mi sa inserire il nome saltando il cognome!!:eek: :eek:
E come se al secondo ciclo di inserimento non mi vedrebbe il primo gets e quindi fa 2 printf e poi il gets per inserire il nome.
Dove sta l'errore??
Ecco uno screen Shot:
http://www.games4u.it/struct.JPG