Ciao,
ho fatto un esercizio per laboratorio di programmazione.
Consiste in un programma che chiede nome e cognome di 200 impiegati e mette i dati in un array di strutture, quando alla richiesta del nome si preme invio deve terminare...il programma compila e funziona ma c'è qualche errorino con la logica...mi sembra che ne chiede uno in più...
codice:
#include <stdio.h>
#include <string.h>
int main(){
struct impiegato{
char nome[30];
char cognome[30];
};
typedef struct impiegato impiegato;
impiegato vettore[200];
int i=1;
int a;
char name[30];
char surname[30];
printf("Inserire il nome dell'impiegato numero %d, niente per terminare il programma:\n", i);
gets(name);
if(name[0] != '\0'){
printf("Inserire il cognome dell'impiegato numero %d\n", i);
gets(surname);
i++;
while(i<200 && name[0]!='\0'){
strcpy(vettore[i].nome, name);
strcpy(vettore[i].cognome, surname);
printf("Inserire il nome dell'impiegato numero %d, niente per terminare il programma:\n", i);
gets(name);
printf("Inserire il cognome dell'impiegato numero %d\n", i);
gets(surname);
i++;
}
}
printf("\n\n\nLista degli impigati:\n\n");
for(a=0; a<=i; a++)
printf("Nome: %s Cognome: %s\n", vettore[a].nome, vettore[a].cognome);
printf("\n\n");
return 0;
}
Grazie
Andrea