Vedi di individuare la riga in cui avviene, eseguendo il programma linea per linea (con il debugger).
Ad esempio, controlla attentamente questa linea
strcpy(esame[k].mat,ptr->info.mat);
per capire se l'indice k va oltre il valore massimo possibile.