Crea, mediante array de strings o en un fichero de configuración, las rutas donde tu programa tendrá que mirar si hay el .srt que busca el usuario; y después que vaya probando ruta por ruta si el archivo existe y cargue la primera aparición o le diga al usuario que no existe.
Yo lo he hecho con arrays:
Así suponiendo que hay un archivo llamado prueba.txt en el directorio prueba, con texto en su interior 'prueba'; y un archivo llamado prueba2.txt en el directorio prueba2, con texto en su interior 'prueba2':
Nombre el archivo a buscar: prueba
Contenido de prueba
---------------------
prueba
Nombre el archivo a buscar: prueba2
Contenido de prueba2
----------------------
prueba2
Nombre el archivo a buscar: prueba3
El archivo prueba3 no ha sido encontrado
Yo lo he hecho con arrays:
Código (c) [Seleccionar]
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp;
char cadena[80];
char directorio[2][80];
char archivo[80];
char ruta[165];
char const extension[] = ".txt";
int i;
int encontrado;
int caracteres;
strcpy(directorio[0], "./prueba/");
strcpy(directorio[1], "./prueba2/");
printf("Nombre el archivo a buscar: ");
scanf("%79s", archivo);
puts("\n");
for(i = 0, encontrado = 0; i < 2 && !encontrado; ++i) {
ruta[0] = '\0';
strcat(ruta, directorio[i]);
strcat(ruta, archivo);
strcat(ruta, extension);
fp = fopen(ruta, "r");
if(fp)
encontrado = 1;
}
if(encontrado) {
caracteres = printf(" Contenido de %s\n", archivo);
for(i = 0; i < caracteres; ++i)
printf("-");
puts("");
while(!feof(fp)) {
fscanf(fp, "%s", cadena);
puts(cadena);
cadena[0] = '\0';
}
}
else {
printf("El archivo %s no ha sido encontrado\n", archivo);
}
return(0);
}
Así suponiendo que hay un archivo llamado prueba.txt en el directorio prueba, con texto en su interior 'prueba'; y un archivo llamado prueba2.txt en el directorio prueba2, con texto en su interior 'prueba2':
Nombre el archivo a buscar: prueba
Contenido de prueba
---------------------
prueba
Nombre el archivo a buscar: prueba2
Contenido de prueba2
----------------------
prueba2
Nombre el archivo a buscar: prueba3
El archivo prueba3 no ha sido encontrado