Menu
Coddy logo textTech

Recapitulação: Fundamentos de Ponteiros

Parte da seção Logic & Flow do Journey de C da Coddy — lição 6 de 63.

challenge icon

Desafio

Fácil

Escreva um programa em C que demonstre o fluxo de trabalho completo de ponteiros ao trabalhar com múltiplos tipos de dados. Seu programa deve:

  1. Declarar uma variável inteira chamada age e inicializá-la com o valor 25
  2. Declarar uma variável de caractere chamada grade e inicializá-la com o valor 'A'
  3. Declarar uma variável float chamada temperature e inicializá-la com o valor 98.6
  4. Declarar três ponteiros correspondentes:
    • Um ponteiro para um inteiro chamado age_ptr
    • Um ponteiro para um caractere chamado grade_ptr
    • Um ponteiro para um float chamado temp_ptr
  5. Usar o operador de endereço (address-of) para atribuir os endereços das variáveis aos seus respectivos ponteiros
  6. Usar o operador de desreferência (dereference) para imprimir todos os três valores através de seus ponteiros no seguinte formato:
    • Age: [value]
    • Grade: [value]
    • Temperature: [value] (com exatamente 1 casa decimal)
  7. Modificar as variáveis originais através de seus ponteiros:
    • Alterar age para 30 usando age_ptr
    • Alterar grade para 'B' usando grade_ptr
    • Alterar temperature para 99.5 usando temp_ptr
  8. Imprimir os valores modificados diretamente das variáveis originais (não através dos ponteiros) no mesmo formato do passo 6

Sua saída deve exibir os resultados no seguinte formato:

Age: 25
Grade: A
Temperature: 98.6
Age: 30
Grade: B
Temperature: 99.5

Este desafio testa sua compreensão da declaração de ponteiros, atribuição de endereço, desreferenciamento para leitura e escrita de valores, e demonstra que os ponteiros fornecem acesso direto aos locais de memória das variáveis originais.

Experimente você mesmo

#include <stdio.h>

int main() {
    // TODO: Escreva seu código aqui
    // Declarar variáveis e ponteiros
    // Atribuir endereços aos ponteiros
    // Imprimir valores através dos ponteiros
    // Modificar valores através dos ponteiros
    // Imprimir valores modificados das variáveis originais
    
    return 0;
}

Todas as lições de Logic & Flow