O problema está na linha:
Site S[]= new Site[100];
Para cada iteração, você cria uma nova matriz; portanto, no final, ela está cheia apenas de indicadores nulos. Quando você tenta acessar os s [0], ele lhe dará um ponteiro nulo na segunda iteração.
É por isso que ele é impressa primeiro, mas na segunda vez que você recebe um ponteiro nulo. Primeira vez que o S [0] tem um valor, a segunda vez que não.