Senti osservando il tuo codice mi viene da chiederti se hai qualche esigenza particolare in quanto usi un file di tipo txt che sono un po' rognosi da gestire. Ti consiglio di usare un file di tipo byte cosi ti sarà più facile gestire gli inserimenti e le ricerche....
<#include stdio.h>
<#include conio.h>
typedef struct{
char nome[20];
char cogno[20];
char cfs[20];
tdata data;
}tanagrafica;
typedef struct{
int anno;
int giorno;
int mese;
}tdata;
FILE *fanagrafica;
char nomecerc[20];
char cognocerc[20];
tanagrafica ranagrafica;//record di buffer che poi scrivero' nel file
void cerca (void){
fanagrafica=fopen("C:.....","rb");
printf("Inserisci il nome da cercare..");
gets(nomecerc);
printf("Inserisci il cognome da cercare..");
gets(cognocerc);
fread(&ranagrafica,sizeof(ranagrafica),1,fanagrafi ca);
while((!(feof(fanagrafica))&&(strcmp(ranagrafica.n ome,nomecerc=0))&&.....
fread(&ranagrafica,sizeof(ranagrafica),1,fanagrafi ca);
}//fine while
if(strcmp(ranagrafica.nome,nomecerc)==0))&&(...... ..==0)){
printf("il nome c'è");
}else{
printf("ilnome non c'è");
}
}//fine main
//similare puo' essere il controllo x l'inserimento magari lanci un sottoprogramma che esegue il controllo.....
![]()

Rispondi quotando