Create a Sparse Matrix
#include<stdio.h> #include<conio.h> int main () { int i,j,a[10][10],sm[10][10],c=0,m,n; clrscr(); printf("Enter the order of m x n matrix:\n"); scanf("%d%d",&m,&n); printf("Enter the Matrix:\n"); for(i=0;i<m;i++) for(j=0;j<n;j++) scanf("%d",&a[i][j]); //Calculation for(i=0;i<m;i++) { for(j=0;j<n;j++) { if(a[i][j]!=0) c++; } } printf("\nNo of non zero element:%d\n\n",c); if(((m*n)/3)>c) { printf("Sparse Matrix is:\n"); sm[0][0]=m; sm[0][1]=n; sm[0][2]=c; for(i=0;i<m;i++) { for(j=0;j<n;j++) { if(a[i][j]!=0) { sm[i+1][0]=i+1; sm[i+1][1]=j+1; sm[i+1][2]=a[i][j]; } } } //Printing for(i=0;i<=c;i++) { for(j=0;j<3;j++) printf("%d ",sm[i][j]); printf("\n"); } } else printf("It is not possible\n"); getch(); return 0; }