Programma che permette di inserire un certo numero di offerte di fornitori:
- codice fornitore (numero naturale)
-Nome fornitore (array di carattere )
- importo offerta in euro (numero float)
Il programma cerca e visualizza l’offerta migliore (la più economica)

Il programma è piuttosto semplice e compila ma al momento dell'esecuzione va in crash. Vi premetto che il mio prof. di info ha spiegato le struct abbastanza maluccio e molto probabilmente sbaglio in qualcosa a livello concettuale.

Questo è il codice che ho pensato:

codice:
#include<stdio.h>
#include<stdlib.h>
#define MAX 100

struct offerta{
       int Codice_fornitore;
       char Nome_fornitore[MAX];
       float Importo;
       };

void main()
{
     int i=0,j,ind;
     float miglioreoff;
     int scelta;
     struct offerta Off[MAX];
     do{
            fflush(stdin);
            printf("Vuoi inserire un offerta? SI=1   NO=2\n");
            scanf("%d",&scelta);
            if(scelta==1)
            {
            printf("Inserisci codice fornitore: ");
            fflush(stdin);
            scanf("%d",&Off[i].Codice_fornitore);
            printf("Inserisci nome fornitore: ");
            fflush(stdin);
            scanf("%s",Off[i].Nome_fornitore);
            printf("Inserisci importo: ");
            fflush(stdin);
            scanf("%f",&Off[i].Importo);
            i++;
            }
            
     }while(scelta == 1);
     for(j=1;j<i;j++)
     {
       miglioreoff=Off[0].Importo;
       if( Off[j].Importo> miglioreoff)
       
         Off[j].Importo=miglioreoff;
         ind=j;
         }
       printf("Migliore offerta: %d della azienda %s",miglioreoff,Off[ind].Nome_fornitore);
system("pause");
}