//pitta_rozzo
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct scarpe{
int cod_prodotto;
char descrizione[20];
int giacenza;
float prezzo;
} t_scarpe;
typedef struct clienti{
int cod_cliente;
char nome_cognome[20];
char Citta[2];
}t_clienti;
typedef struct acquisti_online{
t_scarpe cod_prodotto;
t_clienti cod_cliente;
int quantita;
char data_ora[16]; // DD-MM-YYYY-HH-MM
}t_acquisti_online;
//MEMORIZZAZIONE DI NUOVI PRODOTTI
void memorizza_scarpe (){
t_scarpe scarpe;
FILE *fscarpe=fopen ("scarpe.dat","a+");
printf ("codice prodotto: ");
scanf("%d", &scarpe.cod_prodotto);
printf ("\n descrizione: ");
scanf("%s", scarpe.descrizione);
printf("\n giacenza: ");
scanf("%d", &scarpe.giacenza);
printf("\n prezzo: ");
scanf("%f", &scarpe.prezzo);
fwrite(&scarpe,sizeof(t_scarpe),1,fscarpe);
fclose (fscarpe);
}
//MODIFICA PRODOTTI TRAMITE CODICE PRODOTTO
void modifica_prodotto (){
t_scarpe scarpe;
int codice_cercato;
FILE *fscarpe=fopen ("scarpe.dat", "r+");
printf ("inserisci il codice prodotto da cercare");
scanf ("%d", &codice_cercato);
while(fread(&scarpe,sizeof(t_scarpe),1,fscarpe)==1){
if (scarpe.cod_prodotto==codice_cercato){
char nuova_descrizione[20];
int nuova_giacenza;
float nuovo_prezzo;
printf ("\ninserisci la nuova descrizione: ");
scanf("%s", nuova_descrizione);
printf("\ninserisci la nuova giacenza");
scanf ("%d", &nuova_giacenza);
printf ("\n inserisci il nuovo prezzo");
scanf ("%f", &nuovo_prezzo);
scarpe.descrizione==nuova_descrizione;
scarpe.giacenza=nuova_giacenza;
scarpe.prezzo=nuovo_prezzo;
fseek(fscarpe,-sizeof(t_scarpe),SEEK_CUR);
fwrite(&scarpe,sizeof(t_scarpe),1,fscarpe);
}
else {printf ("codice non trovato");
system("pause");}
}
fclose (fscarpe);
}
//MEMORIZZAZIONE DI NUOVI CLIENTI
void memorizza_clienti (){
t_clienti clienti;
FILE *fclienti=fopen ("clienti.dat","a+");
printf ("codice cliente: ");
scanf("%d", &clienti.cod_cliente);
printf ("\n nome e cognome: ");
scanf("%s", clienti.nome_cognome);
printf("\n citta': ");
scanf("%s", &clienti.Citta);
fwrite(&clienti,sizeof(t_clienti),1,fclienti);
fclose (fclienti);
system ("pause");
}
//MEMORIZZAZIONE ACQUISTI ONLINE
void acquisti_online (){
t_acquisti_online acquisti_online;
t_clienti clienti;
t_scarpe scarpe;
FILE *facquisti_online=fopen ("acquisti_online.dat","a+");
printf ("codice cliente: ");
scanf("%d", &clienti.cod_cliente);
printf ("\n codice prodotto: ");
scanf("%d", &scarpe.cod_prodotto);
printf("\n quantita': ");
scanf("%s", &acquisti_online.quantita);
printf("\n data e ora dell'acquisto: ");
scanf("%s", &acquisti_online.data_ora);
fwrite(&acquisti_online,sizeof(acquisti_online),1,facquisti_online);
fclose (facquisti_online);
}
/*visualizza acquisti on line
void visualizza_acquisti (){
t_acquisti_online acquisti_online;
t_clienti clienti;
}*/
//VISUALIZZA PRODOTTI CON GIACENZA<50
void giacenza_50() {
t_scarpe scarpe;
FILE *fscarpe=fopen ("scarpe.dat","r");
while(fread(&scarpe,sizeof(t_scarpe),1,fscarpe)==1){
if (scarpe.giacenza<50){
printf ("prodotto %d, pezzi %d", &scarpe.cod_prodotto, &scarpe.giacenza);
printf("\n**********\n");
system ("pause");
}
}
fclose (fscarpe);
}
main(){
int scelta;
do{
system ("cls");
printf ("1.inserisci prodotti\n");
printf("2.modifica prodotti\n");
printf ("3.inserisci clienti\n");
printf("4.memorizzazione acquisti on line\n");
printf("5.giacenza<50\n");
printf ("6. ESCI\n");
printf ("***********************************\n");
scanf("%d", &scelta);
switch(scelta){
case 1: memorizza_scarpe ();
break;
case 2: modifica_prodotto ();
break;
case 3: memorizza_clienti ();
break;
case 4: acquisti_online ();
break;
case 5: giacenza_50();
break;
default: break;
} } while(scelta=!6);
}
eccolo!
PS sapresti dirmi anche perchè dopo una selezione il programma si chiude invece di tornare al menu dello switch ? grazie