codice:
printf(" Inserire il titolo da cercare: \n");
fgets(s, 100, f);         // leggi 100 caratteri dal file
// com'è che prima chiedi di inserire il titolo da cercare e poi leggi
// dal file? (non capisco se è un errore oppure lo "posticipi" coscientemente)
// cmq devi leggerne 1 in meno della dim di s, cioé 99

// con queste due qua sotto che cosa fai?
while ((c = getchar()) != '\n')
titolo[50] = c;   // mi sa che qua c'è un errore (non capisco le tue intenzioni!

if (! strcmp(s, titolo))    {
    printf("Si c'e l'hai\n");
    }
    else    {
    printf("No nn c'e l'hai\n");
    }
...

fatti sentire