Versão atual:

Alternar valores em um vetor em C

Alguém pode me ajudar com esse exercício? Eu só consigo trocar o valor da posição 9 para o maior.

Preencha um vetor de números inteiros, de 10 posições, com números randômicos entre o intervalo 0 e 49.

• Apresente os números do vetor.

• Coloque o maior número na posição 9, e o valor da posição 9 para a posição que o maior número ocupava (inverta as posições do maior número com a posição 9)

Exemplo:

Posição 0 1 2 3 4 5 6 7 8 9 Valor 22 13 47 6 18 35 28 44 5 16

Posição 0 1 2 3 4 5 6 7 8 9 Valor 22 13 16 6 18 35 28 44 5 47


Consegui chegar nessa lógica apenas:

int main(){

    int vet_numero[10];
    int cont, maior, pos, aux;

    srand(time(NULL));

    for(cont = 0; cont <= 9; cont++){

        vet_numero[cont] = rand() % 50;        
        printf("[%i] - numero: %i\n", cont, vet_numero[cont]);

        if(vet_numero[cont] > maior){

            maior = vet_numero[cont];
            pos = cont;    

        }
    }
    printf("\n");


    for(cont = 0; cont <= 9; cont++){
        printf("[%i] - numero: %i\n", cont, vet_numero[cont]);

        if(cont == pos){
            vet_numero[9] = maior;
        }
    }

    system("pause");
    return 0;
}

Obrigado!!

Versão(1):

Ver a versão formatada

Alternar valores em um vetor em C

Comentário

new question