Desenvolva um programa em C que inverta os elementos de um vetor.

Passo 1

Beleza, vamos lá! O que a questão está pedindo é para a gente criar um programa em C que inverta os elementos de um vetor. Isso envolve entender como vetores (ou arrays) funcionam na programação e como podemos manipular seus elementos. Para resolver isso, vamos precisar saber como acessar e modificar elementos de um vetor usando loops.

Passo 2

Primeiro, vamos entender o que é um vetor em C. Um vetor é uma estrutura que armazena uma sequência de elementos do mesmo tipo. Por exemplo, um vetor de inteiros pode armazenar vários números inteiros. Para criar um vetor, a gente define o tipo de dado e o tamanho, tipo assim:
int vetor[5];
Aqui, vetor é um vetor que pode armazenar 5 números inteiros.

Passo 3

Agora, para inverter os elementos de um vetor, nossa ideia é trocar o primeiro elemento com o último, o segundo com o penúltimo, e assim por diante, até chegar ao meio do vetor. Para fazer isso, vamos usar um loop que percorre o vetor até a metade dos elementos, fazendo as trocas necessárias.

Passo 4

Vamos precisar de uma variável temporária para guardar o valor de um elemento enquanto fazemos a troca. Por exemplo, para trocar vetor[i] com vetor[j], usamos uma variável temporária para não perder o valor original.

Passo 5

Vamos resumir os passos para inverter o vetor:
  1. Inicializar o vetor com alguns valores.
  2. Usar um loop para percorrer até a metade do vetor.
  3. Dentro do loop, trocar o elemento atual com o elemento correspondente do final usando a variável temporária.
  4. Após o loop, o vetor estará invertido.

Resposta

Aqui está um exemplo de programa em C que inverte os elementos de um vetor:
#include <stdio.h>

int main() {
    int vetor[] = {1, 2, 3, 4, 5};
    int tamanho = sizeof(vetor) / sizeof(vetor[0]);
    int temp;

    printf("Vetor original: ");
    for(int i = 0; i < tamanho; i++) {
        printf("%d ", vetor[i]);
    }

    // Invertendo o vetor
    for(int i = 0; i < tamanho / 2; i++) {
        temp = vetor[i];
        vetor[i] = vetor[tamanho - 1 - i];
        vetor[tamanho - 1 - i] = temp;
    }

    printf("\nVetor invertido: ");
    for(int i = 0; i < tamanho; i++) {
        printf("%d ", vetor[i]);
    }

    return 0;
}
Explicação rápida do código:
  • Inicializamos um vetor com os valores {1, 2, 3, 4, 5}.
  • Calculamos o tamanho do vetor.
  • Imprimimos o vetor original.
  • Usamos um loop for para trocar os elementos do início com os do final até a metade do vetor.
  • Imprimimos o vetor invertido.
Quando você rodar esse programa, a saída será:
Vetor original: 1 2 3 4 5 
Vetor invertido: 5 4 3 2 1 

Exercícios relacionados