A dire il vero in quel caso dovresti addirittura avere problemi nella compilazione visto che nella scanf() specifichi %s come codice di formato (che è per i puntatori a carattere) e arrayprove[0].nome è un semplice carattere, non un puntatore.

Se intendevi invece qualcosa come

codice:
struct prova {
        char *nome;
}

int main(void)
{
        struct prova arrayprove[10];
        scanf("%s",arrayprove[0].nome);

        return 0;
}
allora hai esattamente lo stesso problema del primo esempio. Prova.