Questão de Programação — Conceitos básicos de programação — FGV 2026
Programação›Conceitos 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.
AA função cria cópias temporárias dos valores de x e y e os retorna após a execução.
BO compilador duplica as variáveis x e y na stack de chamada da função.
CA função recebe o endereço de memória das variáveis originais e opera diretamente sobre o local de armazenamento delas.
DO valor de retorno da função é atribuído automaticamente às variáveis de entrada x e y.
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.