Si, sembra un problema di memoria, se compilo col borland, quando vado ad eseguire il programma termina immediatamente; se riduco la dimensione di testa_heap invece funziona. Se uso il compilatore MinGW (che ti consiglio di provare, puoi scaricarlo con un ide come MinGWDeveloperStudio o devc++), il programma funziona anche con la dimensione originale di testa_heap. Puoi eventualmente risolvere il problema alllocando dinamicamente quegli array.