Hola os expongo mi problema,
bien yo tengo una lista simplemente enlazada que contiene un diccionario y tengo un fichero con X palabras, pues bien lo que quiero hacer es comparar cada palabra del fichero con todas las del diccionario y copiar en otro fichero de salida las palabras que se hayan encontrado en el diccionario. Lo he intentado hacer así:
tResultat ProcessarFitxer(char *origen, char *desti, tLlista *pdiccionari)
{
tNode *c=pdiccionari->primer;
char registre [25];
char minuscules[25];
FILE *entrada;
FILE *sortida;
entrada=fopen(origen,"r");
sortida=fopen(desti,"a");
while((!feof(entrada))){
fscanf (entrada, "%s", registre);
ConvertirMinuscules (registre, minuscules);
while (c!=NULL){
if (strcmp (c->paraula, minuscules)==0){
fprintf (sortida, "%s ", minuscules);
}
c=c->seguent;
}}
fclose(entrada);
fclose(sortida);
return(NO_ERROR);
}
Y lo que hace esta función es unicamente tratar la primera palabra del fichero, solo compara la primera palabra con el diccionario. Yo había hecho esta función con el fin de comparalas todas y copair las que estubieran bien escritas en el fichero de salida pero no lo hace.
Alguna idea para modificar la funcion?
Gracias!!