Questo for non ha molta speranza di finire, visto che j è uguale a 0 e nulla lo modifica

codice:
for (j=0; j<O && b[i].atleta[j].nome!=NULL; ){
      if (b[i].atleta[j].tempo<media){
      num++;
   }
}
Stesso discorso per quello subito sotto