How to multiply matrix by vector in C

1 Answer

0 votes
#include <stdio.h>

#define COLS 3
#define ROWS 2

void matrix_x_vector(int matrix[][COLS], int vector[], int multiplied_array[]) {
    for (int i = 0; i < ROWS; i++) {
        for (int j = 0; j < COLS; j++) {
            multiplied_array[i] += matrix[i][j] * vector[j];
        }
    }
}


int main()
{
    int vector[COLS] = {3, 4, 3};
    int matrix[ROWS][COLS] = {
            {0, 3, 5},
            {5, 5, 2}};
    int multiplied_array[2] = {0};


    matrix_x_vector(matrix, vector, multiplied_array);

    for (int i = 0; i < ROWS; i++)
        printf("%3i", multiplied_array[i]);

    return 0;
}



/*
run:

 27 41

*/



 



answered Mar 23, 2022 by avibootz
...