Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/02/2007, 11:08
endsamsara
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 10 meses
Puntos: 0
Buscar una palabra en un archivo

hola

Como le puedo hacer para que desde un archivo que se leen datos "entrada" se obtenga otro de resultado de datos "salida" pero que el programa busque una palabra en cada renglon (en una matriz de caracteres), "SOPA DE LETRAS"

se utiliza fscanf, fgets, cual es conveniente para ir leyendo y comparando cada renglon?


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<conio.h>

FILE *ArchivoEntrada;
FILE *ArchivoSalida;
void main()
{
char SOPA[20][20];
char palabra;
int i,x;
};
ArchivoEntrada=fopen("c:\\TC\\BIN\\entrada.txt", "r");
ArchivoSalida=fopen("c:\\TC\\BIN\\salida.txt", "w");
if (ArchivoEntrada==NULL || ArchivoSalida==NULL)
{
printf("ERROR");
getch();
return;
}
else


while (!feof(ArchivoEntrada))
{
fscanf(ArchivoEntrada, "%s", &cadena);

fprintf(ArchivoSalida, "%s\n", buscar());
///PUEDO HACER ESTA LLAMADA A OTRA FUNCION EN EL PRINTF sino como se hace ?///


fprintf(ArchivoSalida, "%s",);
}
clrscr();
printf("El archivo se ha copiado con exito \n");
getch();
fclose(ArchivoEntrada);
fclose(ArchivoSalida);
}

Buscar()
{
int i,j,d,a,b,p,letras;
int fin=0;
letras=strlen(Palabra);
for (i=0; i<x && !fin; i++)
{
for (j=0; j<y && !fin; j++)

{
for (a=i,b=j,p=1;
Palabra[p-1]==Tabla[a][b] && p<=letras &&
a>=0 && a<x && b>=0 && b<y;
p++,a+=DirX[d],b+=DirY[d])
if (p==letras)
{
fprintf(FileOut,"%d %d %d %d",i+1,j+1,a+1,b+1);
fin=1;
}
}
}
if (fin==0) fprintf(FileOut,"???");
}





??????????????????