Considere o trecho de código em linguagem de programação C a...

Próximas questões
Com base no mesmo assunto
Q2319249 Programação

Considere o trecho de código em linguagem de programação C a seguir: 

main()

{

int myCount = 0;

while (myCount < 10)

{

printf("%d",myCount+1);

}

system("pause");


Assinale a alternativa que apresenta, corretamente, o que esse trecho de código fará ao ser executado. 

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: E - Entrará em looping infinito.

Para resolver esta questão, é necessário compreender os conceitos básicos de programação em linguagem C, especialmente estruturas de repetição (loops) como o while, e saída de dados utilizando a função printf. O trecho de código em questão tem a finalidade de mostrar como o loop while pode ser usado para repetir um bloco de código enquanto uma condição for verdadeira.

A condição do loop é myCount < 10, o que significa que o loop deveria continuar enquanto o valor da variável myCount for menor que 10. No entanto, dentro do loop, a variável myCount não está sendo atualizada; isto é, não há incremento de myCount que faria a condição eventualmente se tornar falsa (myCount alcançaria 10). Portanto, a condição do loop permanecerá sempre verdadeira, resultando em um looping infinito.

A função printf("%d",myCount+1); imprime o valor de myCount+1, mas como mencionado, myCount nunca é incrementada dentro do loop. Isso significa que myCount+1 sempre será 1, e essa impressão ocorrerá indefinidamente em vez de apenas 10 vezes como algumas alternativas poderiam sugerir.

As outras alternativas são incorretas porque:

  • A: Não mostrará os valores de 0 a 9, pois não há incremento de myCount.
  • B: Não mostrará os valores de 1 a 10, pelo mesmo motivo que a alternativa A é incorreta.
  • C: Não escreverá myCount 10 vezes, o loop não tem um ponto de parada definido.
  • D: Não escreverá o número 0 por 10 vezes, pois mesmo que myCount estivesse sendo incrementado corretamente, a impressão seria de myCount+1, e não de myCount que é inicializado com 0.

Compreender esse conceito é fundamental para evitar erros comuns na programação, como loops infinitos que podem causar falhas de execução ou até mesmo travamento do sistema em que o código está rodando. Sempre verifique se há uma condição de saída adequada em seus loops para que seu programa funcione como esperado.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo