Leia com atenção as instruções abaixo.
Valor: 2,0 pontos na 2ª Nota.
Data da Entrega Limite: 01/10/2020
Assuma as seguintes regras de associatividade e de precedência para expressões:
Precedência | Mais Alta | *, /, not |
+, -, &, mod | ||
- (unário) | ||
=, /=, <, <=, >=, > | ||
and | ||
Mais baixa | or, xor | |
Associatividade | Esquerda | para a direita |
Mostre a ordem de avaliação das seguintes expressões por meio do uso de parênteses em todas as subexpressões e colocando um expoente no parêntese direito para indicar a ordem. Por exemplo, para a expressão:
a + b * c + d
a ordem de avaliação seria representada como:
((a + (b * c)1)2 + d)3
Considere que a função fun é definida como:
int fun(int *k) {
*k += 4;
return 3 * (*k) - 1 ;
}
Suponha que fun seja usada em um programa, como:
void main() {
int i = 10, j = 10, sum1, sum2;
sum1 = (i / 2) + fun(&i);
sum2 = fun(&j) + (j / 2);
}
Quais são os valores de sum1 e sum2
Considere que o seguinte programa em C:
int fun(int *i) {
*i += 5;
return 4;
}
void main() {
int x = 3;
x = x + fun(&x);
}
Qual é o valor de x após a sentença de atribuição em main, assumindo que