Salve a tutti non so se il titolo può andare bene perchè non so spiegare brevemente il problema che ho.
Ho scritto un programma che mi dovrebbe permettere di inserire i dati di automobili.
codice:
#include<stdio.h>
#include<malloc.h>
struct automobile{
char marca[20];
char modello[20];
int vendute[20];
} a;
int *p,i;
struct automobile dettagli[20];
char risp;
main()
{
for(i=0;i<30;i++){
printf("Vuoi inserire elementi nella lista? (s/n): ");
scanf("%c",&risp);
getchar();
if(risp=='s' || risp=='S'){
printf("\nDettagli automobile: \n\n");
printf("Marca : ");
scanf("%s",dettagli[i].marca[i]);
printf("Modello: ");
scanf("%s",dettagli[i].modello[i]);
printf("Unita' vendute: ");
scanf("%d",&dettagli[i].vendute[i]);
}
}
system("PAUSE");
}
Il primo inserimento va tutto bene metto s e mi fa inserire i dettagli dell'auto. al secondo inserimento quando mi chiede vuoi inserire elementi nella lista se metto s me lo richiede s rimetto s la stessa cosa e così via. Solo se quando mi chiede la seconda volta vuoi inserire....ammacco invio me lo richiede ma questa volta mettendo s mi fa inserire i dati...sapete qual'è il problema?? Un'altra cosa è giusto dichiarare il vettore automobile come ho fatto io dato che deve contenere dati diversi?? grazie per 'aiuto