Criando uma matriz na linguagem C

Uma matriz em C é uma estrutura de dados bidimensional que consiste em uma coleção de elementos do mesmo tipo, organizados em linhas e colunas. Para criar uma matriz em C, é necessário especificar o número de linhas e colunas, além do tipo de dados que a matriz armazenará.

A sintaxe para declarar uma matriz em C é a seguinte:

tipo_de_dado nome_da_matriz[numero_de_linhas][numero_de_colunas];

Como exemplo, para criar uma matriz de inteiros com 3 linhas e 4 colunas, podemos usar o seguinte código:

int matriz[3][4];

Podemos acessar os elementos da matriz usando os índices de linha e coluna. Os índices começam em zero e vão até o número de linhas ou colunas menos um. Como exemplo, para acessar o elemento na segunda linha e terceira coluna da matriz, podemos usar o seguinte código:

matriz[1][2] = 10;

O código acima atribui o valor 10 ao elemento na segunda linha e terceira coluna da matriz.

As matrizes em C são úteis para armazenar dados em forma tabular, como valores de uma planilha. Elas são amplamente utilizadas em programas que envolvem cálculos matemáticos, simulações e processamento de imagens, jogos, dentre outros.

A imagem a seguir apresenta o mapa mental contendo a subdivisão e a utilização de uma matriz na linguagem C.

Fonte: Autoria própria.

Crie um código utilizando as estruturas de uma matriz e cole no comentário.

12 comentários em “Criando uma matriz na linguagem C

  1. //2 – Crie um algoritmo que preencha uma matriz 10×20 com números inteiros e some cada uma
    //das linhas, armazenando o resultado das somas em um vetor. A seguir, o programa deverá
    //multiplicar cada elemento da matriz pela soma da linha correspondente e mostrar a matriz
    //resultante.

    #include
    #define TAMi 2
    #define TAMj 2
    int main ()
    {
    int i,j;
    int M[TAMi][TAMj];
    int SOMA[TAMi]= {0};
    int R[TAMi][TAMj];

    printf(“Informe os elementos da matriz:\n”);
    for (i=0; i<TAMi; i++)
    {
    for (j=0; j<TAMj; j++)
    {
    printf("M[%d][%d]:", i+1,j+1);
    scanf("%d",&M[i][j]);
    }
    }

    for (i = 0; i < TAMi; i++)
    {
    for (j = 0; j< TAMj; j++)
    {
    SOMA[i] += M[i][j];
    }
    }

    for (i = 0; i < TAMi; i++)
    {
    for (j = 0; j< TAMj; j++)
    {
    R[i][j] = SOMA[i]*M[i][j];
    }
    }
    printf("\nMatriz Informada:\n");
    for (i=0; i<TAMi; i++)
    {
    for (j=0; j<TAMj; j++)
    {
    printf("%d\t",M[i][j]);
    }
    printf("\n");
    }
    printf("\nMatriz Resultante:\n");
    for (i=0; i<TAMi; i++)
    {
    for (j=0; j<TAMj; j++)
    {
    printf("%d\t",R[i][j]);
    }
    printf("\n");
    }
    return 0;
    }

    Curtir

  2. #include
    #include

    main()
    {
    int i, codcid, qtdveic, acid, maior=0, media, codmaior, cont=0, soma2000=0, media2000, menor=999, codmenor, somaveic=0; //A variável i vai servir de motor para a estrutura de repetição

    for(i=0; i<5; i++) //1 Parte=inicialização=0; 2Parte=condição maior)
    {
    maior=acid;
    codmaior=codcid;
    }
    if(acid < menor)
    {
    menor=acid;
    codmenor=codcid;
    }
    somaveic=somaveic+qtdveic;
    if(qtdveic < 2000)
    {
    soma2000=soma2000+acid;
    cont++;
    }
    media2000=soma2000/cont;

    }
    media=somaveic/5;
    printf("O maior indice de acid de transito e de %d acidentes na cidade %d \n", maior, codmaior);
    printf("O menor indice de acid de transito e de %d acidentes na cidade %d \n", menor, codmenor);
    printf("A media de veiculos nas cinco cidades e de : %d \n", media);
    printf("A media de acid de trans nas cidades com menos de 2000 veic e de : %d \n", media2000);

    system("pause");
    }

    Curtir

  3. Exercício 1, atividade 2
    #include
    int main() {
    char carro[5][20];
    float km[5], qtd_1 = 0, consumo1000[5];
    int i, economico = 0;

    for (i =0; i < 5; i++) {
    printf ("informe o nome do carro: ", i+1);
    scanf ("%s", &carro[i]);

    printf ("\ninforme o consumo (km/l) do carro: ", carro[i]);
    scanf ("%f", &km[i]);
    if (km[economico] < km[i]) {
    economico = i;
    }
    consumo1000[i] = 1000.0 / km[i];
    }
    printf ("melhor consumo: %s\n", carro[economico]);
    for (i = 0; i < 5; i++){
    printf ("consumo do %s em 1000 km eh %.2f litros\n", carro[i], consumo1000[i]);
    }
    return 0;
    }

    Curtir

  4. Lista- 1
    Exercicio 12:

    #include
    #include
    #include
    #include

    main()
    {
    int op;
    float Sal, Imps, NewSal;

    printf(“\n\n1 – Imposto\n2 – Novo Salario\n3 – Classificacao\nDigite a opcao desejada:\n\n”);
    scanf(“%d”,&op);

    switch(op){
    case 1:
    printf(“1. Imposto:\n”);
    printf(“Digite seu salario:\n”);
    scanf(“%f”,&Sal);

    if (Sal < 1302){
    Imps = (Sal * 5)/100;
    printf("Seu Imposto e de: %f", Imps);
    } else if(1302 < Sal 2000){
    Imps = (Sal * 15)/100;
    printf(“Seu Imposto e de: %f”, Imps);
    }
    break;
    case 2:
    printf(“2. Novo Salario:\n”);
    printf(“Digite seu salario:\n”);
    scanf(“%f”,&Sal);

    if (Sal > 2000){
    NewSal = Sal + 25;
    printf(“Seu novo salario e de: %f\n”, NewSal);
    } else if(Sal = 1302){
    NewSal = Sal + 50;
    printf(“Seu novo salario e de: %f\n”, NewSal);
    }else if(Sal = 651){
    NewSal = Sal + 75;
    printf(“Seu novo salario e de: %f\n”, NewSal);
    }else if(Sal 2000) printf(“Bem remunerado”);
    else printf(“Mal remunerado”);
    break;
    }
    }

    Lista 2
    Exercicio 2:

    #include
    int main(){

    int Num[10],i,Maior50[10], posi[10], j = 0, k = 0 ;
    printf(“Insira os valores para guardar no Vetor:\n”);
    for(i=0; i < 10; i++){
    scanf("%i", &Num[i]);
    }
    for (i = 0; i = 50){
    Maior50[j] = Num[i];
    posi[k] = i;
    j++;
    k++;
    }
    }
    if(j == 0){
    printf(“Nao temos numeros maiores que 50”);
    }else{
    printf(“Os numeros maiores que 50 sao:\n”);
    for (i=0; i < j ; i++){
    printf("%i, ", Maior50[i]);
    }
    printf("\nE suas posicoes sao:\n");
    for (i=0; i < k ; i++){
    printf("%i, ", posi[i]+1);
    }
    }
    }

    Lista 3
    Exercicio 1:

    #include

    main(){
    int Matriz[2][2], Maior = 0, i, j, MR[2][2];

    printf(“Insira os valores da matriz M:\n”);
    for(i=0; i<2; i++){
    for(j=0; j Maior){
    Maior = Matriz[i][j];
    }
    }
    }
    printf(“\n”);
    for(i=0; i<2; i++){
    printf("\n");
    for(j=0; j<2; j++){
    MR[i][j] = Maior * Matriz[i][j];
    printf("%i ,", MR[i][j]);
    }
    }
    }

    Curtir

  5. Lista 1 – EX13
    #include
    #include
    int main()
    {
    int i,CC,QV,QA,MAIOR=0,MENOR=1000,CODMAIOR,CODMENOR,CONT=0,SOMAV,SOMA2000,MEDIA2000,MEDIA;
    for (i=0;iMAIOR)
    {
    MAIOR=QA;
    CODMAIOR=CC;
    }
    if (QA<MENOR)
    {
    MENOR=QA;
    CODMENOR=CC;
    }
    SOMAV=SOMAV+QV;
    if(QV<2000)
    {
    SOMA2000=SOMA2000+QA;
    CONT++;
    }
    MEDIA2000=SOMA2000/CONT;
    }
    MEDIA=SOMAV/5;
    printf("O maior indice de acid de transito e de %i acidentes na cidade %i \n", MAIOR,CODMAIOR);
    printf("O menor indice de acid de transito e de %i acidentes na cidade %i \n", MENOR,CODMENOR);
    printf("A media de veiculos nas cinco cidades e de : %i \n", MEDIA);
    printf("A media de acid de trans nas cidades com menos de 2000 veic e de : %i \n", MEDIA2000);
    return 0;
    }

    Curtir

  6. Lista 2 – EX7
    #include
    int main()
    {
    int i,N[15];
    for (i=0;i<15;i++)
    {
    printf("informe um numero:");
    scanf("%i",&N[i]);
    }
    printf("\nos numeros iguais 30 estao nas posicoes:");
    for (i=0;i<15;i++)
    {
    if(N[i]==30)
    {
    printf("\n%i",i+1);
    }
    }
    return 0;
    }

    Curtir

  7. lista 2 EX 2
    Faça um algoritmo que carregue um vetor com dez números inteiros. Calcule e mostre os números superiores a 50 e suas respectivas posições. Mostrar mensagem se não existir nenhum número nessa condição.

    #include
    int main()
    {

    int num[10];

    int i, count = 0;

    for(i = 0; i < 10; i++){

    printf("Informe um numero: ");

    scanf("%d", &num[i]);

    }

    printf("\n\n");

    for(i = 0; i 50){

    printf(“Numero: %d || Posicao:[%i]\n”, num[i], i);

    count++;

    }

    }

    if(count == 0){

    printf(“Nenhum numero informado e maior que 50.\n”);

    }

    return 0;

    }

    Curtir

  8. #include
    #define tam 2

    int main()
    {
    int M[tam][tam], I, J, maior=0;
    printf(“Informe os valores da matriz:\n”);

    for(I=0;I<tam;I++){
    for(J=0;Jmaior){
    maior = M[I][J];
    }
    }
    }
    printf(“\nMatriz informada:\n”);
    for(I=0;I<tam;I++){
    for(J=0;J<tam;J++){
    printf("[%d]", M[I][J]);
    }printf("\n");
    }
    printf("\nMatriz multiplicada pelo maior numero informado:\n");
    for(I=0;I<tam;I++){
    for(J=0;J<tam;J++){
    printf("[%d]",M[I][J]*maior);
    }printf("\n");
    }

    return-1;
    }

    Curtir

  9. Lista 3// ex2
    #include

    int main()
    {
    int m[2][12], somai[10], i, j;

    for (i = 0; i < 10; i++) {
    for (j = 0; j < 20; j++) {
    printf("Informe o número: ");
    scanf("%d" , &m[i][j]);
    }
    }
    for (i = 0; i < 10; i ++) {
    somai[i] = 0;
    for (j = 0; j < 20; j++) {
    somai[i] += m[i][j];
    }
    }
    for (i = 0; i < 10; i++) {
    for (j = 0; j < 20; j++) {
    m[i][j] *= somai[i];
    }
    }
    printf("\nMatriz resultante:\n");
    for (i = 0; i < 10; i ++) {
    for (j = 0; j < 20; j++) {
    printf(" %d ", m[i][j]);
    }
    printf("\n");
    }

    return 0;
    }

    Curtir

  10. #include
    #define tami 10
    #define tamj 20

    int main()
    {
    int M[tami][tamj], I, J, soma[tami] = {0};

    printf(“Informe valores para a matriz:\n”);

    for(I=0;I<tami;I++){
    for(J=0;J<tamj;J++){
    scanf("%d", &M[I][J]);
    }
    }
    for(I=0;I<tami;I++){
    for(J=0;J<tamj;J++){
    soma[I] = soma[I] + M[I][J];
    }
    }
    printf("\nMatriz original:\n");
    for(I=0;I<tami;I++){
    for(J=0;J<tamj;J++){
    printf("[%d]", M[I][J]);
    }printf("\n");
    }
    printf("\nMatriz multiplicada pela soma de cada coluna:\n");
    for(I=0;I<tami;I++){
    for(J=0;J<tamj;J++){
    printf("[%d]", M[I][J]*soma[I]);
    }printf("\n");
    }

    return 0;
    }

    Curtir

  11. #include
    #define tamanho 2

    int main()
    {
    int Ma[tamanho][tamanho], I, J, maior=0;
    printf(“Informe os valores da matriz:\n”);

    for(I=0;I<tamanho;I++){
    for(J=0;Jmaior){
    maior = Ma[I][J];
    }
    }
    }

    printf(“\nMatriz informada:\n”);
    for(I=0;I<tamanho;I++){
    for(J=0;J<tamanho;J++){
    printf("[%d]", Ma[I][J]);
    }printf("\n");
    }

    printf("\nMatriz multiplicada pelo maior numero informado:\n");
    for(I=0;I<tamanho;I++){
    for(J=0;J<tamanho;J++){
    printf("[%d]",Ma[I][J]*maior);
    }printf("\n");
    }

    return-1;
    }

    Curtir

Deixar mensagem para Diego Cruz Cancelar resposta

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.