Computação Múltipla Escolha

Observe a descrição da estrutura básica do comando switch case na linguagem C, mostrada a seguir. Está correto afirmar que:

Observe a descrição da estrutura básica do comando switch case na linguagem C, mostrada a seguir.

switch(<expressão>) {
  case <valor-1>:
    comando(s);
  case <valor-2>:
    comando(s);
  default:
    comando(s);
}

Está correto afirmar que:

  1. Cada seguindo a palavra case deve ser definido por constantes ou literais.
  2. O código para o caso default é obrigatório.
  3. não pode ser definida por constantes ou literais.
  4. Somente um dos grupos de comandos pode ser executado de cada vez.
  5. O comando break não é permitido no interior dos grupos de comandos.

Resolução completa

Explicação passo a passo

A
Alternativa A

Alternativa A - Cada [valor] seguindo a palavra case deve ser definido por constantes ou literais.

Análise da Questão

A questão aborda a sintaxe específica do comando switch-case na linguagem de programação C. Para identificar a resposta correta, precisamos entender como essa estrutura funciona tecnicamente.

Por que a Alternativa A é Correta?

No C, o switch avalia uma expressão e compara seu resultado com as constantes listadas após a palavra-chave case.

  • Regra Fundamental: Os valores utilizados nos case devem ser constantes inteiras (inteiros conhecidos em tempo de compilação).
  • Exemplo: case 5: ou case 'A': são válidos.
  • Inválido: case x: (onde x é uma variável) gera erro de compilação, pois o compilador precisa saber o endereço de memória exato para construir a tabela de saltos.

Análise das Demais Alternativas

  • (B) O código para o caso default é obrigatório.
  • Incorreto. O default é opcional. Ele serve apenas para capturar valores que não correspondem a nenhum case anterior. Se não existir nenhuma correspondência e não houver default, o programa simplesmente sai do bloco switch.
  • (C) não pode ser definida por constantes ou literais.
  • Incorreto. Esta opção contradiz a regra básica do C. Os valores devem ser constantes.
  • (D) Somente um dos grupos de comandos pode ser executado de cada vez.
  • Incorreto (com ressalvas). Embora a lógica ideal seja executar um único bloco, o C possui um comportamento chamado "Fall-through" (queda). Se você esquecer de colocar a instrução break; ao final de um case, a execução continuará automaticamente para o próximo case, executando múltiplos blocos consecutivos até encontrar um break ou o fim do switch.
  • (E) O comando break não é permitido no interior dos grupos de comandos.
  • Incorreto. O break é extremamente comum e necessário dentro de um case para interromper a sequência de execução e sair do switch.

Resumo

A única afirmação estritamente verdadeira sobre a sintaxe do switch em C é que os rótulos (case) devem ser definidos por constantes ou literais, permitindo ao compilador criar uma tabela eficiente de busca.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Computação

Ver mais Computação resolvidas

Tem outra questão de Computação?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.