Cosa intendi fare con quella funzione? Da come la utilizzi sembra tu voglia definire semplicemente il massimo dell'array ma l'algoritmo implementato ha l'aria di essere un bubble sort molto sui generis... tanto per cominciare n[z] e *(n+z) sono assolutamente la stessa cosa, quindi non potrebbe mai risultare il primo maggiore del secondo (vedi condizione if), inoltre perché passi per indirizzo il numero di elementi dell'array? Non hai bisogno di modificarlo.
In ogni caso, se devi fare una semplice funzione di ricerca del massimo non devi fare altro che un semplice ciclo iterativo (e uno solo) che scorra tutto l'array e che aggiorni mano mano il massimo facendo il confronto tra l'elemento i-esimo dell'array e il massimo calcolato al passo i-esimo (ovviamente è uno dei possibili approcci, di sicuro il più semplice e immediato comunque).