Questão nº 43
Questão de Tecnologia da Informação · FGV TJ-AP 2024 (nº 43)
FGV2024Analista Judiciário - TI - Desenvolvimento de SistemasTecnologia da Informação
Gabarito: Dver comentário ↓
No contexto da linguagem C#, considere o código a seguir.
using System;
namespace TESTE
{
class CLA
{
static void Main(string[] args)
{
for (int i = 0; i < 5; i++) {}
Console.WriteLine(i);
}
}
}
A execução desse script provoca:
- Aa exibição do valor 5;
- Ba exibição do valor 6;
- Ca exibição dos números 0,1,2,3,4;
- Dum erro de compilação; (alternativa correta)
- Eum erro de execução de variável sem valor atribuído.
Resposta comentada
Gabarito Alternativa D
Em C#, o escopo de uma variável define a região do código onde ela pode ser acessada. Uma variável declarada dentro de um bloco de código específico, como um laço for, só existe e é visível dentro daquele bloco.
- (A) Incorreta: Esta é a armadilha da banca. Em C#, a variável
ideclarada na inicialização do laçofor(for (int i = 0; ...)) tem seu escopo restrito ao próprio laço. Após o laço terminar,ideixa de existir, tornando impossível acessar seu valor final (que seria 5 se fosse acessível). - (B) Incorreta: O valor 6 nunca seria alcançado, e a variável
inão estaria acessível fora do laço de qualquer forma. - (C) Incorreta: Para exibir os números 0, 1, 2, 3, 4, a instrução
Console.WriteLine(i);precisaria estar dentro do laçofor, sendo executada a cada iteração. - (D) Correta: A variável
ié declarada dentro do laçofor, o que significa que seu escopo (a área do código onde ela é válida e pode ser usada) é limitado a esse laço. Ao tentar usarifora do laço (Console.WriteLine(i);), o compilador C# não consegue encontrá-la nesse contexto e gera um erro de compilação, pois a variável não está definida ou visível naquele ponto. - (E) Incorreta: O problema não é que a variável
iexiste mas não tem um valor atribuído; o problema é que ela não existe no escopo onde está sendo referenciada. Isso é um erro detectado pelo compilador (erro de compilação), e não um erro que ocorreria apenas durante a execução.
Fonte: FGV TJ-AP 2024 Analista Judiciário - TI - Desenvolvimento de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.