Ed
há 2 meses
Vamos analisar o código passo a passo: ```c #include void funcao(int a, int b){ int c; c = a; a = b; b = c; } void main(){ int a, b; a = 21; b = 18; funcao(a, b); printf("a= %d b=%d", a, b); } ``` - Na função `funcao`, os parâmetros `a` e `b` são passados por valor, ou seja, cópias dos valores originais são usadas dentro da função. - Dentro da função, ocorre a troca dos valores de `a` e `b`, mas isso afeta apenas as cópias locais, não as variáveis originais em `main`. - Portanto, após a chamada `funcao(a, b);`, os valores de `a` e `b` em `main` permanecem inalterados. - O `printf` vai imprimir os valores originais: `a=21 b=18`. Resposta correta: d) a=21 b=18