Qual o valor de y no final do programa?
int main()
{
int y, *p, x;
y = 0;
p = &y;
x = *p;
x = 5;
*p = *p + 1;
x--;
*p = *p + x;
printf ("y = %d\n", y);
return(0);
}
A - 0
B - 5
C - 6
D - 1
E - 4
Soluções para a tarefa
Respondido por
13
Resposta:
O resultado será 5 (opção B).
Explicação:
Perceba que a "p" é um ponteiro e que na linha "p = &y;" você atribui o endereço de "y" para "p". assim temos:
y = 0; /* y=0 x=indeterminado */
p = &y; /* y=0 x=indeterminado (p recebe o endereço de y) */
x = *p; /* y=0 x=0 */
x = 5; /* y=0 x=5 */
*p = *p + 1; /* y=1 x=5 */
x--; /* y=1 x=4 */
*p = *p + x; /* y=5 x=4 */
karolparaujo:
Muito Obrigada!
Perguntas interessantes
Matemática,
6 meses atrás
Português,
6 meses atrás
Geografia,
6 meses atrás
Português,
7 meses atrás
Ed. Física,
7 meses atrás
Matemática,
11 meses atrás
Matemática,
11 meses atrás
Matemática,
11 meses atrás