Ler um vetor de
elementos inteiros e colocá-los em ordem crescente. Exibir o vetor antes e depois.
Passo 1
O enunciado pede ler um vetor de N elementos inteiros e colocá-los em ordem crescente, exibindo o vetor antes e depois. O conteúdo envolve vetores e algoritmos de ordenação (vamos usar bubble sort). Para resolver precisamos de leitura de dados, impressão, loops, comparações e troca de valores.
Passo 2
Começamos lendo o valor de N (tamanho do vetor) e alocando o vetor. Depois percorremos de 0 a N-1, lendo cada elemento com scanf e armazenando em vetor[i].
Passo 3
Para exibir o vetor antes da ordenação, fazemos um loop de 0 a N-1 e imprimimos cada vetor[i], mostrando o estado inicial.
Passo 4
Usamos o bubble sort para ordenar em ordem crescente. Em cada passagem (i de 0 a N-2) percorremos o vetor até N-2-i, comparamos vetor[j] e vetor[j+1] e, se vetor[j] > vetor[j+1], trocamos os valores. Repetimos até completar todas as passagens, garantindo que o maior elemento “borbulhe” ao fim do vetor a cada iteração.
Passo 5
Por fim, exibimos o vetor ordenado com outro loop de impressão de 0 a N-1, mostrando o resultado final da ordenação.
Resposta
#include <stdio.h>
#include <stdlib.h>
#include <stdlib.h>
int main() {
int N, i, j, temp;
printf(“Digite o número de elementos: “);
scanf(”%d”, &N);
int *vetor = malloc(N * sizeof(int));
int N, i, j, temp;
printf(“Digite o número de elementos: “);
scanf(”%d”, &N);
int *vetor = malloc(N * sizeof(int));
// Leitura dos elementos
for (i = 0; i < N; i++) {
printf("Digite o elemento %d: ", i + 1);
scanf("%d", &vetor[i]);
}
// Exibe antes da ordenação
printf("Vetor antes da ordenação: ");
for (i = 0; i < N; i++) {
printf("%d ", vetor[i]);
}
printf("\n");
// Bubble sort para ordem crescente
for (i = 0; i < N - 1; i++) {
for (j = 0; j < N - 1 - i; j++) {
if (vetor[j] > vetor[j + 1]) {
temp = vetor[j];
vetor[j] = vetor[j + 1];
vetor[j + 1] = temp;
}
}
}
// Exibe após a ordenação
printf("Vetor após a ordenação: ");
for (i = 0; i < N; i++) {
printf("%d ", vetor[i]);
}
printf("\n");
free(vetor);
return 0;
}