ragazzi ho un piccolo problema acquisendo tramite stringhe con le struct i libri di una bibblioteca e poi rivisualizzare i libri inseriti ed infine visualizzare i libri che per titolo contengo la parola informatica....ecco il codice:
il problema è che mi visualizza nel riepilogo solo l ultimo libro inserito e mi mostra come libro contenente informatica nel titolo anche l ltimo libro inseritocodice:#include <iostream> #include <stdlib.h> #include <string.h> using namespace std; typedef char Tstring50[51]; typedef char Tstring30[31]; typedef char vuoto[1]; struct bibblioteca{ Tstring50 titolo; Tstring30 autore; float prezzo; Tstring50 isbn; int annopubblicazione; Tstring50 editore; }; typedef bibblioteca Tlibri[100]; int main() { bibblioteca Tlibri; int N,scelta,I; vuoto a; do{ cout<<"Libri da inserire: "; cin>>N; cin.getline(a,1); }while((N<1)||(N>100)); for(I=0;I<N;I++){ cout<<endl; cout<<I+1<<char(248)<<" libro"<<endl; cout<<endl; cout<<"Titolo: "; cin.getline(Tlibri.titolo,51); cout<<"Autore: "; cin.getline(Tlibri.autore,31); cout<<"Prezzo: "; cin>>Tlibri.prezzo; cin.getline(a,1); cout<<"ISBN: "; cin.getline(Tlibri.isbn,51); cout<<"Anno pubblicazione: "; cin>>Tlibri.annopubblicazione; cin.getline(a,1); cout<<"Editore: "; cin.getline(Tlibri.editore,51); } cout<<endl; cout<<"----------Riepilogo---------- "<<endl; cout<<endl; for(I=0;I<N;I++){ cout<<endl; cout<<I+1<<char(248)<<"libro"<<endl; cout<<endl; cout<<"Titolo: "<<Tlibri.titolo<<endl; cout<<"Autore: "<<Tlibri.autore<<endl; cout<<"Prezzo: "<<Tlibri.prezzo<<endl; cout<<"ISBN: "<<Tlibri.isbn<<endl; cout<<"Anno pubblicazione: "<<Tlibri.annopubblicazione<<endl; cout<<"Editore: "<<Tlibri.editore<<endl; } cout<<endl; cout<<"Premere un tasto per vedere i libri conetenenti nel titolo la parola informatica (1).SI (2).NO: "; cin>>scelta; for(I=0;I<N;I++){ if(scelta == 1){ system("cls"); if((strstr(Tlibri.titolo,"informatica"))||(strstr(Tlibri.titolo,"Informatica"))||(strstr(Tlibri.titolo,"INFORMATICA"))){ cout<<endl; cout<<"I libri che contengono la parola informatica nel titolo sono:"<<endl; cout<<endl; cout<<I+1<<char(248)<<"libro"<<endl; cout<<endl; cout<<"Titolo: "<<Tlibri.titolo<<endl; cout<<"Autore: "<<Tlibri.autore<<endl; cout<<"Prezzo: "<<Tlibri.prezzo<<endl; cout<<"ISBN: "<<Tlibri.isbn<<endl; cout<<"Anno pubblicazione: "<<Tlibri.annopubblicazione<<endl; cout<<"Editore: "<<Tlibri.editore<<endl; } else{ cout<<"Nessun libro contenente informatica come titolo"<<endl; } } } system("PAUSE"); return 0; }
come posso risolvere??

Rispondi quotando
