Ed
há 4 semanas
Vamos analisar o código e as alternativas: O código é: ```c int numero, soma = 0; do { printf("Digite um numero (0=sair): "); scanf("%d", &numero); soma += numero; } while (numero); printf("Soma: %d\n", soma); ``` Passo a passo: - A variável soma é inicializada com 0 antes do laço. - O laço do...while executa pelo menos uma vez. - A cada iteração, o número digitado é somado à variável soma. - O laço termina quando o número digitado for 0 (porque a condição do while é "numero", que é falso quando numero == 0). - Após o laço, é exibida a soma total. Agora, analisando as alternativas: A) "A variável soma será sempre zerada quando for pedido o número." Incorreto. A soma é inicializada antes do laço e acumulada, não é zerada a cada entrada. B) "As chaves podem ser suprimidas, estando o laço de repetição delimitado entre o do e o while." Incorreto. No do...while, se houver mais de uma instrução no bloco, as chaves são obrigatórias. C) "A avaliação da condição resultará em um erro por não ser uma expressão relacional ou lógica." Incorreto. Em C, a condição do while pode ser uma expressão inteira; zero é falso, qualquer outro valor é verdadeiro. D) "O laço de repetição será terminado quando o número digitado for 0." Correto. O laço termina quando numero == 0. E) "A digitação do 0 fará zerar a variável soma, mostrando sempre 0 como resultado final." Incorreto. O 0 não zera soma, apenas termina o laço; soma mantém o valor acumulado. Resposta correta: D) O laço de repetição será terminado quando o número digitado for 0.
Cadastre-se ou realize login
Mais perguntas desse material