Beh comunque l'ho appena provata e ora ti posso dire che funziona, ma a metà, perché alla fine, con l'ultimo valore assunto da i (che sarebbe n-1), tu controlli se vet[i]>vet[i+1] ma questo lo fa uscire fuori dal limite dell'array e sballa tutto. Se non fosse per quello dovrebbe funzionare. Infatti quando cerco di ordinare 3,5,1,2,4, viene fuori 0,1,2,3,4. Comunque il ragionamento che hai fatto è davvero contorto, ci ho messo un po' a capirlo