Ciao A tutti sono nuovo sia del forum che del linguaggio di programmazione .
questo è il mio piccolo e credo per la maggior parte di voi abbastanza ridicolo , ma ho cominciato da un mese a studiare da solo forte solo delle mie conoscenze matematiche .
di seguito vi invio il codice che ho scritto :
codice:#include<stdio.h> #include<stdlib.h> #include<string.h> #define STORE_FILE "store.dat" typedef struct{ char libro[30]; char autore[50]; }libro; main(){ char ty;{ printf("\n\t\t-Menu'di scelta- "); printf("\n----------------------"); printf("\n1-Inserisci libro "); printf("\n2-leggi dati "); } printf("\n--------------------"); printf("\n\t-Scelta : -",ty); ty=getchar(); getchar(); //riga che annulla l'invio dopo la scelta (riga inutile). switch (ty) { case '1': FILE *fp; libro l; int i; if(!(fp=fopen(STORE_FILE,"a+b"))){ printf("\nErrore scrittura file%s",STORE_FILE); exit(1); } printf("\n\t\t==>Iserisci<== "); printf("\n-Autore:"); gets(l.autore); printf("\n-Titolo:"); gets(l.libro); if(fwrite(&l,sizeof(l),1,fp)>0){ printf("\nDati scritti OK"); printf("\n----------------");} else printf("\nerrore "); fclose(fp); break; case'2': if(!(fp=fopen(STORE_FILE,"r"))){ printf("\n errore di lettra dei dati%s ",STORE_FILE); exit(1); } while(fread(&l,sizeof(l),1,fp)>0){ printf("\nautore:%s",l.autore); printf("\nTitolo:%s",l.libro); printf("\n------------"); i++; } int c=i-55; printf("\n================="); printf("\n-Titoli letti :%d\n",c); printf("\n================="); fclose(fp); } }
Ora il mio problema è questo :
dopo aver inserito un record vorrei inserine un altro senza dover chiudere il programma , quindi come faccio a di re al programma vuoi inserire un altro record o vuoi tornare al menù principale .
grazie in an ticipo

Rispondi quotando