Considere o programa escrito em linguagem C: # include

Considere o programa escrito em linguagem C: # include int main () { int a[ ][4] = {1,2,3,4,5,6,7,8,9,10,11,12}; ...


publicidade
publicidade

🚀 Desbloqueie a explicação completa

Veja comentários detalhados e resoluções exclusivas para entender o gabarito desta questão.

Criar conta grátis
  • Ingrid Nunes
    Ingrid Nunes EQUIPE
    18/10/2025 • 12:51
    Vamos analisar o código passo a passo para entender o que será impresso.

    Primeiro, temos a declaração de uma matriz `a` de duas dimensões, mas sem especificar o número de linhas, apenas o número de colunas que é 4. Os valores são inicializados como `{1,2,3,4,5,6,7,8,9,10,11,12}`. Como cada linha deve conter 4 elementos (devido à declaração `[ ][4]`), a matriz `a` é organizada da seguinte forma:
    ```
    a[0] = {1, 2, 3, 4}
    a[1] = {5, 6, 7, 8}
    a[2] = {9, 10, 11, 12}
    ```

    O loop `for` itera com a variável `i` de 0 a 2. Dentro do loop, a função `printf` é chamada com o argumento `"%d", *(a[i]+1)`. Aqui, `a[i]` é o endereço da primeira coluna da i-ésima linha, e `a[i]+1` é o endereço da segunda coluna da i-ésima linha. O operador `*` é usado para dereferenciar o endereço, ou seja, para obter o valor armazenado nesse endereço.

    Portanto, `*(a[i]+1)` acessa o segundo elemento de cada linha da matriz:
    - Para `i=0`, `*(a[0]+1)` é `2`.
    - Para `i=1`, `*(a[1]+1)` é `6`.
    - Para `i=2`, `*(a[2]+1)` é `10`.

    Assim, o programa imprime `2610` sequencialmente, sem espaços ou quebras de linha.

    Gabarito: e) 2610

Utilizamos cookies e tecnologias semelhantes para aprimorar sua experiência. Política de Privacidade.