Aprendendo Matrizes 2D em C

As matrizes 2D, também chamadas de arrays bidimensionais, são estruturas utilizadas para armazenar dados organizados em linhas e colunas.

Elas aparecem em diversas situações do mundo real, como mapas, tabuleiros de jogos, sistemas de assentos, planilhas, calendários, tabelas de vendas e registros de temperaturas.

Antes de aprender operações mais avançadas, como soma de linhas, colunas ou busca do maior elemento, é importante dominar os fundamentos das matrizes: criação, inicialização, acesso por índices, alteração de elementos e exibição utilizando loops aninhados.

Neste conteúdo você irá praticar todos esses conceitos através de exemplos simples e aplicações do cotidiano.

QUESTÃO 1 – Mapa de salas

Uma escola possui 3 andares e 4 salas por andar.

Crie uma matriz 2D contendo os números das salas abaixo:

101 102 103 104
201 202 203 204
301 302 303 304

Exiba todas as salas utilizando loops aninhados.

Exemplo:
				
					101 102 103 104
201 202 203 204
301 302 303 304
				
			
Resposta:
				
					#include <stdio.h>

int main() {

    int salas[3][4] = {
        {101, 102, 103, 104},
        {201, 202, 203, 204},
        {301, 302, 303, 304}
    };

    int linha;
    int coluna;

    for(linha = 0; linha < 3; linha++) {

        for(coluna = 0; coluna < 4; coluna++) {

            printf("%d ", salas[linha][coluna]);

        }

        printf("\n");
    }

    return 0;
}
				
			

QUESTÃO 2 – Lugares do cinema

Um cinema possui a seguinte disposição de assentos:

1 1 0
1 0 1
1 1 1

Onde:

1 = ocupado
0 = livre

Crie a matriz e exiba todos os valores.

Exemplo:
				
					1 1 0
1 0 1
1 1 1
				
			
Resposta:
				
					#include <stdio.h>

int main() {

    int assentos[3][3] = {
        {1,1,0},
        {1,0,1},
        {1,1,1}
    };

    int linha;
    int coluna;

    for(linha = 0; linha < 3; linha++) {

        for(coluna = 0; coluna < 3; coluna++) {

            printf("%d ", assentos[linha][coluna]);

        }

        printf("\n");
    }

    return 0;
}
				
			

QUESTÃO 3 – Alterando posição da matriz

Crie a matriz:

5 10
15 20

Depois altere o valor:

10 → 50

e exiba a matriz atualizada.

Exemplo:
				
					5 50
15 20
				
			
Resposta:
				
					#include <stdio.h>

int main() {

    int matriz[2][2] = {
        {5,10},
        {15,20}
    };

    matriz[0][1] = 50;

    int linha;
    int coluna;

    for(linha = 0; linha < 2; linha++) {

        for(coluna = 0; coluna < 2; coluna++) {

            printf("%d ", matriz[linha][coluna]);

        }

        printf("\n");
    }

    return 0;
}
				
			

QUESTÃO 4 – Consultando posição específica

Considere a matriz:

12 24 36
48 60 72
84 96 108

Exiba apenas:

  • o valor da posição [0][2]
  • o valor da posição [2][1]
Exemplo:
				
					36
96
				
			
Resposta:
				
					#include <stdio.h>

int main() {

    int matriz[3][3] = {
        {12,24,36},
        {48,60,72},
        {84,96,108}
    };

    printf("%d\n", matriz[0][2]);
    printf("%d\n", matriz[2][1]);

    return 0;
}
				
			

QUESTÃO 5 – Temperaturas da semana

Uma estação meteorológica registrou temperaturas durante 2 semanas.

Monte a matriz:

28 30 27 29
31 32 30 28

Depois exiba todos os valores usando loops aninhados.

Exemplo:
				
					28 30 27 29
31 32 30 28
				
			
Resposta:
				
					#include <stdio.h>

int main() {

    int temperatura[2][4] = {
        {28,30,27,29},
        {31,32,30,28}
    };

    int linha;
    int coluna;

    for(linha = 0; linha < 2; linha++) {

        for(coluna = 0; coluna < 4; coluna++) {

            printf("%d ", temperatura[linha][coluna]);

        }

        printf("\n");
    }

    return 0;
}
				
			

Caso o C ainda não esteja instalado em seu dispositivo, clique no botão abaixo para realizar a instalação.

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *