Ed
ano passado
Vamos analisar o programa em C passo a passo para entender o que acontece e determinar a resposta correta. O código é o seguinte: ```c main() { int x, y, z, tab[2][3]; for (x=0; x<2; ++x) for (y=0; y<3; ++y) tab[x][y] = (x*3) + y + 1; z = tab[0][1] * tab[1][2]; } ``` 1. Inicialização da matriz `tab[2][3]`: - `tab` é uma matriz com 2 linhas e 3 colunas. 2. Preenchendo a matriz `tab`: - Para `x = 0`: - `y = 0`: `tab[0][0] = (0*3) + 0 + 1 = 1` - `y = 1`: `tab[0][1] = (0*3) + 1 + 1 = 2` - `y = 2`: `tab[0][2] = (0*3) + 2 + 1 = 3` - Para `x = 1`: - `y = 0`: `tab[1][0] = (1*3) + 0 + 1 = 4` - `y = 1`: `tab[1][1] = (1*3) + 1 + 1 = 5` - `y = 2`: `tab[1][2] = (1*3) + 2 + 1 = 6` Após o loop, a matriz `tab` ficará assim: ``` tab[0][0] = 1 tab[0][1] = 2 tab[0][2] = 3 tab[1][0] = 4 tab[1][1] = 5 tab[1][2] = 6 ``` 3. Cálculo de `z`: - `z = tab[0][1] * tab[1][2]` - `z = 2 * 6 = 12` Agora, vamos analisar as alternativas: (A) z receberá o valor 6. - Incorreta (z = 12) (B) z receberá o valor 24. - Incorreta (z = 12) (C) tab[1][0] receberá o valor 4. - Correta (tab[1][0] = 4) (D) tab[2][3] receberá o valor 12. - Incorreta (tab[2][3] não existe) (E) 12 posições do vetor bidimensional tab serão preenchidas. - Incorreta (são 6 posições) Portanto, a resposta correta é: (C) tab[1][0] receberá o valor 4.
Já tem uma conta?
Ao continuar, você aceita os Termos de Uso e Política de Privacidade
Mais perguntas desse material