Salve...

Ho un codice del genere:
codice:
 main () {
     int i;
     
     char destinazione[15], orario[6], codice[10], cercadest[15], cercaora[6];
        
         FILE *partenze;
         if ((partenze = fopen("partenze.txt", "r")) == NULL) {
                      printf("File could not be opened");
                                                            }
         else {
              printf("Inserisci destinazione: \n");
              scanf("%s", cercadest);
              printf("Inserisci l'orario: \n");
              scanf("%s", cercaora);
              printf("Dalle ore %s sono disponibili i seguenti voli per '%s'\n",cercaora, cercadest);
              
              while(!feof(partenze)) {
                                    fscanf(partenze, "%s %s %s", codice, destinazione, orario);
                                    
                                    if ((strcmp(cercadest,destinazione) == 0) && (strcmp(cercaora,orario) < 0)) {
                                    
                                    printf("\n%s %s %s\n", codice, destinazione, orario); 
                                                                                                                 }    
                                                }
              
         fclose(partenze);
         }
         system("PAUSE");
        }
Questo programma deve leggere delle stringhe in un file e mi deve stampare a video solo quelle che:
1) presentano la destinazione che dò io in input
2) quelle che, dato un orario ad esempio 9:00, mi escano a video quelle che presentano l orario dalle 9:00 in poi...

Ora fino alla destinazione è tutto ok, il problema è che quel (strcmp(cercaora,orario) < 0) non mi funziona correttamente cioè mi si stampano anche le stringhe dove presentano l orario minore a quello dato ma io devo ricevere da quell orario in poi... Dove sta il problema?
Il file è strutturato in questo modo:

CodiceVolo Destinazione Orario

P.S. Non voglio l esercizio bello e fatto chiedo solo dove ho sbagliato...