Ho risolto il problema, in modo un po' grezzo ma l'ho risolto. Ora provo anche il modo in cui hai scritto tu. Ora ti posto il modo in cui ho risolto.
codice:
int cancella(){
FILE*f;
FILE*s;
char nome[15], cognome[15], cognomeM[15], nomeM[15], telefonoM[11], riga[50];
printf("INSERISCI COGNOME: ");
scanf("%s",cognome);
printf("INSERISCI NOME: ");
scanf("%s",nome);
f=fopen("rubrica.txt","r");
s=fopen("temp.txt","a");
while(!feof(f)){
if(fscanf(f,"%s%s%s",cognomeM,nomeM,telefonoM)==3){
if((strcmp(cognomeM,cognome)==0)&(strcmp(nomeM,nome)==0))
printf("\n\nContatto cancellato!");
else
fprintf(s,"%s %s %s\n",cognomeM,nomeM,telefonoM);
}
}
fclose(f);
fclose(s);
remove("rubrica.txt");
rename("temp.txt","rubrica.txt");
return 0;
}