10. Write a program for matrix multiplication.
#include <stdio.h>
#include <conio.h>
#include <graphics.h>
int main()
{
int a[10][10], b[10][10], c[10][10];
int m, n, p, i, j, k;
clrscr();
printf("Enter the order of 1st and 2nd matrix as m,n,p\n");
scanf("%d%d%d", &m, &n, &p);
printf("\nEnter the elements of first matrix\n");
/* scanning first matrix*/
for (i = 0; i < m; i++)
{
printf("Enter %d row elements\n", i + 1);
for (j = 0; j < n; j++)
{
scanf("%d", &a[i][j]);
}
}
/*scanning second matrix*/
printf("\nEnter the elements of second Matrix\n");
for (i = 0; i < n; i++)
{
printf("Enter %d row elements\n", i + 1);
for (j = 0; j < p; j++)
{
scanf("%d", &b[i][j]);
}
}
printf("\nAfter Multiplication of Matricies\n");
/*multiplication process */
for (i = 0; i < m; i++)
{
for (j = 0; j < p; j++)
{
c[i][j] = 0;
for (k = 0; k < n; k++)
c[i][j] += a[i][k] * b[k][j];
printf("%d\t", c[i][j]);
}
printf("\n");
}
return 0;
}
Output
Enter the order of 1st and 2nd matrix as m,n,p
2
2
2
Enter the elements of first matrix
Enter 1 row elements
1
2
Enter 2 row elements
3
4
Enter the elements of second Matrix
Enter 1 row elements
1
4
Enter 2 row elements
6
7
After Multiplication of Matricies
13 18
27 40