fscanf es lo mismo que scanf salvo que "scanf" el parámetro donde indicas el fichero es stdin, se tiene por comodidad para no estar escribiendo siempre lo mismo.
Y para leer archivos, depende de qué tipo sean. Si lo que lees es un archivo de texto buscando palabras, pues simplemente: cargas el fichero en un buffer, haces un bucle que recorra todo el buffer caracter a caracter y llamas a strcmp pasando el puntero cada vez.
Código:
char * Buscar(char * string, char * substring)
{
for(;;string++)
{
if(string=='\0') return NULL;
if(strcmp(string,substring)==0) return string;
}
}
Ese bucle te dejaría con un puntero a la primera ocurrencia de la palabra en el buffer o con un NULL si no la hubiese encontrado.
Pero eso ya está implementado perfectamente en la librería estándar en la función "strstr" mucho mejor y en ASM...