Estoy realizando un programa que revisa en un archivo si existe la palabra pero tengo un error, deja de buscar cuando hay un salto de linea. Les dejo mi codigo
Mod: Los códigos deben ir en etiquetas GeSHi
Código (c) [Seleccionar]
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
char palabra[MAX], *p, c;
int a=0, x;
FILE *fp;
void BuscarPalabra(){
printf("\n Ingresa una palabra: ");
fgets(palabra,MAX,stdin);
int i=0,cont=0,j=0,h=0,flag=0;
fp=fopen("diccionario", "r");
/**/
while(palabra[i]!='\0'&&palabra[i]!=10){
i++;
cont++;
}
p=(char*)malloc(cont*sizeof(char));
/*printf("hhh%c",palabra[cont]);
printf("La palabra ingresada tiene %d caracteres\n",cont);*/
while(!feof(fp)){
/*c=fgetc(fp);*/
fscanf(fp,"%c",&c);
if(c!='*'&&c!=':'){
*(p+j)=c;
/*printf("%c",*p);*/
j++;
}
}
for(h=0;h<cont;h++){
if(palabra[h]==*(p+h)){
flag=1;
}
}
if(flag==1){
printf("\n La palabra si existe :) \n");
}else{
printf("\n La palabra no existe :( \n");
}
}
int main(){
BuscarPalabra();
}
Mod: Los códigos deben ir en etiquetas GeSHi