C/Visual C - Funcion buscar

 
Vista:

Funcion buscar

Publicado por setita (2 intervenciones) el 12/05/2006 21:40:53
Hola, estoy haciendo un diccionario en C, y tengo que hacer una función en la que introduzco una palabra y me devuelve todas las definiciones que contengan esa palabra.

Tengo que utilizar la función STRSTR para buscar caracteres en una lista.

Alguien podría ayudarme?? Es importante que acabe con este proyecto.

Muxas gracias!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Funcion buscar

Publicado por HugoDeveloper (5 intervenciones) el 14/05/2006 03:11:13
Hola, la idea es esta. los datos del diccionario estan registrados en un archivo supongo. lo que tienes q hacer es darle una pasada (leida) de cada registro en el archivo, y durante la pasada comparar el texto que deseas encontrar con el texto en archivo, debes utilizar la funciona strcmp en caso la comparacion sea por palabra completa O strncmp cuando quieras comparar solo un cierto numero de letras.

algo asi

long TotalRegistro=TotalRegistrosEnArchivo;//ES el total de las acepciones que
//tienes en tu archivo
for(long Desde =0;Desde<TotalRegistro;Desde++)
{
IrAlRegistro(Desde);//se posiciona sobre el registro a leer
LeRegistro();
if(strcmp(DatoLeido,DatoIntroducidoParaEncontrar))==0)
NoHaceNada;
else
HacerParaSerMostrado();// En esta funcion hace para ser mostraçdo
//puedes hacer que se envie a otro archivo las
// comparaciones que sea iguales al texto del que querias
//encontrar o bien puedes hacer que se filtren
//mediante un campo int estado en el mismo registro
}
esta facil no creo que te pierdas
pero utiliza un algoritmo como este para hacer esto. otra vez digo q no estoy en mi PC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Funcion buscar

Publicado por setita (2 intervenciones) el 15/05/2006 10:28:22
Muchas gracias por la ayuda, pero yo no estoy tan avanzado.

Las cosas que hago son de este tipo.

Lista agregar(Lista L,algo dato) /* FUNCION PARA AGREGA PALABRA */
{
int encontrado=0;
Lista aux,nuevo,precede;
nuevo=(Lista)malloc(sizeof(struct componente));
nuevo->informacion=dato;
aux=L;
while((encontrado==0)&&(aux!=NULL))
{
if(strcmp(aux->informacion.palabra,dato.palabra)>0)
encontrado=1;
else
{
precede=aux;
aux=aux->enlace;
}
}
if(L==aux)
{
nuevo->enlace=L;
L=nuevo;
}
else
{
precede->enlace=nuevo;
nuevo->enlace=aux;
}
return(L);
}

A ver si me puedes ayudar con una función del mismo estilo. Y aún no guardo los datos. Es que no tengo ni idea pero tengo que seguir avanzando.

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Funcion buscar

Publicado por walter (1 intervención) el 23/05/2006 06:33:55
dime q funciones kieres y te ayudo o dame el enunciado del ejercicio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar