How to subtract matrices in C

1 Answer

0 votes
#include <stdio.h>
#include <time.h>
#include <stdlib.h> 

#define ROW 5
#define COL 5

void print_matrix(int arr[][COL], int i, int j);

int main(void)
{
    int m1[ROW][COL], m2[ROW][COL], difference[ROW][COL], i, j;
  
    srand(time(NULL));
    for (i = 0; i < ROW; i++)
        for (j = 0; j < COL; j++)
        {
            m1[i][j] = rand() % 100 + 1;
            m2[i][j] = rand() % 100 + 1;
        }

    printf("\nm1:\n");
    print_matrix(m1, ROW, COL);
    printf("\nm2:\n");
    print_matrix(m2, ROW, COL);
     
    for (i = 0; i < ROW; i++)
        for (j = 0; j < COL; j++)
             difference[i][j] = m1[i][j] - m2[i][j];
     
    printf("\ndifference:\n");
     
    print_matrix(difference, ROW, COL);
            
    return 0;
}

void print_matrix(int arr[][COL], int i, int j)
{
   for (i = 0; i < ROW; i++)
   {
        for (j = 0; j < COL; j++)
            printf("%4i", arr[i][j]);
        printf("\n");
   }
}

/* 
run:


m1:
  49  80  56  67  92
  50  87  12  29  61
  28  21  42  49   8
  69  82  97  89  32
  16  58  34   5  82

m2:
  99  45   5  31  35
  60  67  27  57  79
   1  41  33  63   9
  37  32  62  84  98
  58  53  79  54  74

difference:
 -50  35  51  36  57
 -10  20 -15 -28 -18
  27 -20   9 -14  -1
  32  50  35   5 -66
 -42   5 -45 -49   8

*/




answered Sep 14, 2014 by avibootz

Related questions

2 answers 183 views
183 views asked Jul 6, 2020 by avibootz
1 answer 108 views
1 answer 106 views
1 answer 122 views
1 answer 126 views
1 answer 123 views
1 answer 110 views
...