se hai una matrice quadrata gli elementi della diagonale saranno
matrice[i][i];
quindi se la tua matrice ha dimensione M li estrai con
for (int i=0; i < M; ++i)
vettore_diagonale[i]=matrice[i][i];
per l'ordinamento devi poi decidere quale algoritmo utilizzare dei numerosissimi a disposizione.
Fai un po' di ricerca con google.
ciao
sergio