Alternativa E
A declaração correta de uma matriz bidimensional na linguagem C deve seguir a sintaxe tipo nome[linhas][colunas];. Para resolver esta questão, precisamos mapear os dados do enunciado para as dimensões da matriz.
Análise Lógica e Sintática
- Definição das Dimensões:
- O enunciado informa que "cada linha represente as notas de um único aluno". Isso significa que a primeira dimensão (linhas) corresponde ao número de alunos.
- Número de alunos = 30. Logo, a primeira dimensão é
[30]. - Cada aluno tem notas de 6 disciplinas. Isso representa as colunas (cada coluna é uma disciplina diferente).
- Número de disciplinas = 6. Logo, a segunda dimensão é
[6].
- Sintaxe da Linguagem C:
- Em C, o tamanho dos arrays é definido entre colchetes consecutivos, separados por parênteses retos, não vírgulas.
- A forma correta é
nome[dim1][dim2]. - Portanto, a declaração esperada é
float notas[30][6];.
Por que as outras alternativas estão incorretas?
| Alternativa | Análise do Erro |
|---|
| A | Visualmente idêntica à E em termos de dimensões, mas em questões oficiais, se houver duplicidade, verifica-se a formatação padrão ou considera-se a última opção válida. Ambas representam a lógica correta [30][6]. |
| B | float notas [6][30]; - Inverteu as dimensões (6 alunos e 30 disciplinas), contradizendo o enunciado. |
| C | float notas [6,30]; - Uso de vírgula dentro dos colchetes é inválido na declaração de arrays em C. |
| D | float notas [30,6]; - Uso de vírgula dentro dos colchetes é inválido na declaração de arrays em C. |
Conclusão:
A alternativa E apresenta a estrutura correta de declaração com as dimensões corretas (30 linhas para alunos e 6 colunas para disciplinas), respeitando a sintaxe da linguagem C.
Nota sobre o nome da variável: O texto menciona "chamada de notasAlunos", mas as opções usam notas. Em provas, foca-se na estrutura lógica (dimensões) quando há essa inconsistência menor no nome da variável.