Pular para o conteúdo principal

Questão de Programação — Conceitos básicos de programação — FGV 2026

ProgramaçãoConceitos básicos de programação
Código
fg127315
Banca
FGV
Órgão
AL-RO
Ano
2026
Nível
Superior
Cargo
Analista Legislativo (Tecnologia da Informação - Análise e Desenvolvimento de Sistemas)
Em uma linguagem que suporta passagem de parâmetros por referência, uma função troca(a, b) é chamada. O Analista observa que após a execução da função, os valores das variáveis originais x e y (passadas como a e b) são alterados.Assinale a afirmativa correta a respeito do mecanismo exato da passagem por referência que permite à função alterar o valor da variável original (x ou y) no escopo do chamador.
  1. AA função cria cópias temporárias dos valores de x e y e os retorna após a execução.
  2. BO compilador duplica as variáveis x e y na stack de chamada da função.
  3. CA função recebe o endereço de memória das variáveis originais e opera diretamente sobre o local de armazenamento delas.
  4. DO valor de retorno da função é atribuído automaticamente às variáveis de entrada x e y.
  5. EA função utiliza variáveis globais para simular a alteração dos parâmetros.
Revelar gabarito e comentário

GabaritoC — A função recebe o endereço de memória das variáveis originais e opera diretamente sobre o local de armazenamento delas.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Passagem de Parâmetros por Referência

Gabarito: letra C. Na passagem por referência, a função recebe o endereço de memória das variáveis originais e opera diretamente sobre esse local de armazenamento, permitindo alterar os valores no escopo do chamador sem criar cópias.

A questão testa o entendimento do mecanismo exato da passagem por referência, que é uma maneira de compartilhar variáveis entre funções sem duplicação. Vejamos cada alternativa.

Passagem de parâmetros
  • 1Por valor
    • Cria cópia na stack
    • Não altera original
  • 2Por referência
    • Recebe endereço de memória
    • Opera diretamente no local
    • Altera original no escopo do chamador
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Descreve o comportamento da passagem por valor, onde o argumento é copiado para o parâmetro da função. As alterações afetam apenas a cópia local, não a variável original. Não é o que ocorre no cenário descrito.

Alternativa B — ❌ Incorreta

Também se refere à passagem por valor: duplicar as variáveis na pilha (stack) é exatamente a cópia feita nesse modelo. Na passagem por referência, não há duplicação — apenas o endereço é passado.

Alternativa C — ✅ Correta ⟵ GABARITO

Essa é a definição clássica: a função recebe o endereço de memória (referência) das variáveis originais e modifica diretamente o conteúdo naquele endereço, refletindo a alteração no escopo do chamador.

Alternativa D — ❌ Incorreta

Confunde o mecanismo com uma atribuição de retorno. Na passagem por referência, a alteração é feita durante a execução da função, não após o retorno. A função não "devolve" um valor às variáveis de entrada; ela as modifica diretamente.

Alternativa E — ❌ Incorreta

Introduz o conceito de variável global, que nada tem a ver com o mecanismo de passagem de parâmetros. A passagem por referência é uma técnica de escopo, independente do uso de globais.

PEGA ESSA DICA!

Memorize as diferenças entre passagem por valor (cópia) e por referência (endereço). Na prova, uma dica rápida: se a função altera a variável original, é por referência; caso contrário, é por valor.

Link permanente: /questoes/fg127315