Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef struct{
- char codice[30];
- int costo;
- char stato[30];
- char marca[30];
- int quantita;
- }prodotto;
- int numero_prodotti;
- prodotto* inserisci_prodotto(prodotto*,prodotto);
- void stampa(prodotto * lista);
- int ricerca_prodotto(prodotto* lista, char* marca, int trovato);
- int main()
- {
- int scelta,trovato;
- prodotto p;
- prodotto *lista;
- char marca[10];
- do
- {
- printf("Gestione prodotti\n");
- printf("1:Inserimento prodotto\n");
- printf("2:Stampa i prodotti inseriti\n");
- printf("3:Quantita' dei prodotti per marca\n");
- printf("0:Uscita\n");
- printf("Scelta:\n");
- scanf("%d",&scelta);
- switch(scelta)
- {
- case 1:
- printf("Inserisci il codice del prodotto\n");
- scanf("%s",p.codice);
- printf("Inserisci il costo del prodotto\n");
- scanf("%d",&p.costo);
- printf("Inserisci lo stato di produzione del prodotto\n");
- scanf("%s",p.stato);
- printf("Inserisci la marca del prodotto\n");
- scanf("%s",p.marca);
- printf("Inserisci la quantita' del prodotto\n");
- scanf("%s",&p.quantita);
- lista = inserisci_prodotto(lista,p);
- break;
- case 2:
- stampa(lista);
- break;
- case 3:
- printf("Inserisci la marca da cercare\n");
- scanf("%s",&marca);
- trovato=ricerca_prodotto(lista, marca, trovato);
- if(trovato==1)
- {
- printf("La marca cercata e' nella lista\n");
- }
- else
- printf("La marca cercata non e' nella lista\n");
- break;
- case 0:
- break;
- }
- }
- while(scelta!=0);
- printf("Arrivederci\n");
- }
- prodotto * inserisci_prodotto(prodotto* lista,prodotto p)
- {
- if (numero_prodotti == 0)
- {
- lista = (prodotto*)malloc(sizeof(prodotto));
- }
- else
- {
- lista = (prodotto*)realloc(lista,sizeof(prodotto)*(numero_prodotti+1));
- }
- lista[numero_prodotti] = p;
- numero_prodotti++;
- return lista;
- }
- void stampa(prodotto* lista)
- {
- int i;
- for(i=0;i<numero_prodotti;i++)
- {
- printf("codice %s\n",lista[i].codice);
- printf("costo %d\n",lista[i].costo);
- printf("stato di produzione %s\n",lista[i].stato);
- printf("marca %s\n",lista[i].marca);
- printf("quantita' %d\n",lista[i].quantita);
- }
- }
- int ricerca_prodotto(prodotto* lista, char *marca,int trovato)
- {
- int i;
- trovato=0;
- for(i=0;i<numero_prodotti;i++)
- {
- if(strcmp(lista[i].marca, marca)==0)
- trovato=1;
- }
- return trovato;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement