Este é um problema bastante conhecido, existem diversas formas de se ordernar um vetor. Como você ainda está começando na programação vou lhe dizer a maneira simples. Além disso a resolução a seguir independe da quantidade de inteiros no vetor. Vamos lá! A ideia deste algoritimo é a seguinte, dado um vetor v[0..n-1] com n numeros, eu vou analisar o subtrecho v[0..i], colocar em m o maior valor e depois colocar o valor m não ultima posicao, veja que quem faz isso é o segundo laco mais interno, então no primeiro loop do for mais externo o ultimo valor estara na posicao correta, no segundo loop o ultimo e o penultimo estaram na posicao correta e assim sucessivamente até que todo o vetor esteja ordenado. /*Ordenação do vetor:*//*Esse laço mais externo ira controlar o subtrecho a ser ordenado.*/ for(i = n-1; i > 0; i--){ m = 0;// Este laço vai decidir em qual posicao do subtrecho [0...i] esta o maior valor for(j = 1; j <= i; j++){ if(vet[j] > vet[m]) m = j; }// Apos decidico qual a posicao m tem o maior valor é hora de substituir o ultimo valor do subtrecho pelo valor contido na posicao m tmp = vet; vet = vet[m]; vet[m] = tmp; } É fácil ver que se você quiser em ordem decrescente basta troca o '>' por '<'. Outra coisa, essa mais "hardcore" kk, é que no pior que caso esse tipo de ordenacao é da ordem de n*n, o que pra n muito grande vai explodir, por isso existem algoritimos de ordenacao muito mais eficientes como o mergesort, quicksort e outros.