Ciao david,
gli ordinamenti funzionano sempre. Alcuni possono esser più veloci, altri più lenti, ma nient'altro. Se i dati anagrafici vengono salvati in un database allora non è compito tuo ordinarli prima di scriverli.
Nel caso di array di vario tipo puoi utilizzare la funzione qsort