Supponendo che tu possa metterci le mani, per quanto riguarda il MAX_COL puoi usare una variabile globale da impostare dopo la prima fscanf del main (dato che non puoi modificare gli argomenti della funzione è l'unico modo):
In AllocateMemory devi mettere un paio di parentesi in più:codice:... fpin = ApriFile("r"); fscanf(fpin, "%d %d %d", &r,&c, &dominant); MAX_COL = c; ...
o non compila proprio (a me almeno)codice:if ( ( m = (int *)malloc(sizeof(int)*r*c) ) != NULL)