Prova un pò questo:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define QCOP 10 /* Quantità Riviste caricate */
struct scaffale {
int codice_identificativo;
char titolo[50] ;
float prezzo;
int quantita_scorta;
char Genereriv[50];
char strumenti_tratt[50];
} SCAFFALE[]={
{1001,"Music",25.00,10,"Jazz","batteria"},
{1002,"Rollistone",30.50,20,"rock","chitarra"},
{1003,"GuitarHero",20.00,30,"pop","tromba"},
{1004,"R&Bmusic",19.00,5,"R&B","batteria"},
{1005,"hipHopHit",22.00,7,"Hiphop","chitarra"},
{1006,"Generation",33.50,11,"Pop","tromba"},
{1007,"TalentMusic",35.00,0,"Pop","chitarra"},
{1008,"ChannelHit",14.00,23,"Rock","batteria"},
{1009,"MusicforLife",45.00,30,"R&B","chitarra"},
{1010,"CrazyMusic",32.50,0,"rock","batteria"}
};
int main(){
char Nomeint[50];
char Nomeinte[50];
char Nomeinter[50];
int menu;
int i,x=1;
/* Visualizzazione Menu a schermo */
while (x!=0){
system("cls");
printf("GESTIONE RIVISTE MUSICALI DI ************************* \n\n");
printf("---------------|NEGOZIO DI RIVISTE MUSICALI|-----------------\n");
printf("1) Aquisto Rivista Tramite Nome\n");
printf("2) Visualizzaare Riviste tramite Genere\n");
printf("3) Visualizzare Riviste Con strumento Musicale Richiesto\n");
printf("0) Esci dal programma\n");
printf("--------------------------------------------------------------\n");
scanf("%d",&menu);
switch (menu){
case 1:
system("cls");
printf("quale rivista vuoi ? " );
scanf("%s",Nomeint);
for (i=0;i<QCOP;i++){
if (strcmp (SCAFFALE[i].titolo,Nomeint)==0){
if (SCAFFALE[i].quantita_scorta==0)
printf("rivista non disponibile!\n\n");
else{
printf("la rivista e disponibile...Aquistata una copia\n\n");
SCAFFALE[i].quantita_scorta--;
}
break;
}
}
if (i==QCOP)
printf("\nNon esiste una rivista con questo nome sullo scaffale!\n\n");
break;
case 2:
system("cls");
printf(" Inserire genere: " );
scanf("%s",Nomeinte);
for (i=0;i<QCOP;i++){
if (strcmp (SCAFFALE[i].Genereriv,Nomeinte)==0)
printf(" - %s\n", SCAFFALE[i].titolo);
}
break;
case 3:
system("cls");
printf(" Inserire strumento musicale: ");
scanf("%s",Nomeinter);
for (i=0;i<QCOP;i++){
if (strcmp (SCAFFALE[i].strumenti_tratt,Nomeinter)==0)
printf(" - %s ; %f ; %d\n", SCAFFALE[i].titolo,SCAFFALE[i].prezzo,SCAFFALE[i].quantita_scorta);
}
break;
printf("\nUscita in corso...\n\n");
}
system("PAUSE");
}
return 0;
}