Analise o código fonte abaixo:
#include
int main(void) {
int x = 1000;
int y = 500;
y-= x++;
printf (" x = %d \t y = %d\n", x, y);
return (0);
}
Após analisar o código fonte, escolha a alternativa correta que representa a saída desse programa.
Alternativas
Alternativa 1:
Aparecerá na tela: x = 1001 y = -499.
Alternativa 2:
Aparecerá na tela: x = 1001 y = -500.
Alternativa 3:
Aparecerá na tela: x = 1000 y = -499.
Alternativa 4:
Aparecerá na tela: x = 1000 y = -500.
Alternativa 5:
Ocorrerá um erro na linha 5 durante o processo de compilação por erro de operação inválida.
Soluções para a tarefa
Respondido por
0
Resposta:
Está correta a alternativa 2:
-= é um atalho matemático, em vez de usarmos y = y - x++, podemos utilizar y-= x++;
Lembre-se da incrementação:
Pós-incremento (x++), ele realizará a operação e somar +1 após isso.
Pré-incremento (++x), ele soma +1 e realiza a operação logo em seguida.
Substituindo as variáveis pelos valores, temos:
y = y - x++;
y = 500 - 1000;
y = -500.
Após a operação é somado +1 ao x, tendo o seu valor igual a 1001.
Sendo assim será impresso x = 1001 e y = -500.
Espero ter ajudado, abraços e bons estudos!
Perguntas interessantes