Crie um programa que contenha um array contendo 5 elementos inteiros. Leia esse array do teclado e imprima o endereço das posições contendo valores pares.

Passo 1

A questão pede para criar um programa em C que leia um array de 5 inteiros e imprima o endereço de memória das posições que contenham valores pares. O conteúdo envolve manipulação de arrays, estruturas de repetição e operadores de endereço e módulo.

Passo 2

Primeiro, incluímos a biblioteca <stdio.h> para usar funções de entrada e saída, e definimos a função main. Declaramos um array de 5 inteiros e uma variável de índice.
Em seguida, usamos um laço for para ler do teclado os 5 valores inteiros, armazenando-os no array.
Depois, usamos outro laço for para percorrer cada elemento do array e aplicamos o operador módulo (%) para verificar se o valor é par (resto zero).
Quando encontramos um valor par, usamos o operador & para obter o endereço de memória dessa posição e imprimimos esse endereço com printf usando o especificador %p.

Resposta

#include <stdio.h>
int main() {
int a[5];
int i;
// Leitura dos 5 valores inteiros
for (i = 0; i < 5; i++) {
    printf("Digite o elemento %d: ", i + 1);
    scanf("%d", &a[i]);
}

// Impressão dos endereços dos valores pares
printf("Enderecos dos valores pares:\n");
for (i = 0; i < 5; i++) {
    if (a[i] % 2 == 0) {
        printf("%p\n", (void *)&a[i]);
    }
}

return 0;
}

Exercícios relacionados