C program to multiply two matrices.

Array in C

/*Matrices Multiplication*/
#include<stdio.h>
#include<conio.h>
void main()
{
  int a[5][5],b[5][5],c[5][5],i,j,k,sum=0,m,n,o,p;
  printf("\nEnter the row and column of first matrix");
  scanf("%d %d",&m,&n);
  printf("\nEnter the row and column of second matrix");
  scanf("%d %d",&o,&p);
  if(n!=o)
  {
printf("Matrix mutiplication is not possible");
printf("\nColumn of first matrix must be same as row of second matrix");
  }
  else
  {
printf("\nEnter the First matrix->");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
 scanf("%d",&a[i][j]);
printf("\nEnter the Second matrix->");
for(i=0;i<o;i++)
for(j=0;j<p;j++)
 scanf("%d",&b[i][j]);
printf("\nThe First matrix is\n");
for(i=0;i<m;i++)
{
printf("\n");
for(j=0;j<n;j++)
{
 printf("%d\t",a[i][j]);
}
}
printf("\nThe Second matrix is\n");
for(i=0;i<o;i++)
{
printf("\n");
for(j=0;j<p;j++)
{
 printf("%d\t",b[i][j]);
}
}
for(i=0;i<m;i++)
for(j=0;j<p;j++)
 c[i][j]=0;
for(i=0;i<m;i++){ //row of first matrix
for(j=0;j<p;j++){  //column of second matrix
 sum=0;
 for(k=0;k<n;k++)
sum=sum+a[i][k]*b[k][j];
 c[i][j]=sum;
}
}
  }
  printf("\nThe multiplication of two matrix is\n");
  for(i=0;i<m;i++)
  {
printf("\n");
for(j=0;j<p;j++)
{
 printf("%d\t",c[i][j]);
}
  }
  getch();
}
Expected Output:
Enter the row and column of first matrix
2
2
Enter the row and column of second matrix
2
2
Enter the First matrix->
4
4
4
4
Enter the Second matrix->
5
5
5
5
The First matrix is
4    4
4    4
The Second matrix is
5    5  
5    5
The multiplication of two matrix is
40    40
40    40

Post a Comment

Previous Post Next Post