首页 > 文章列表 > 稀疏矩阵的C程序

稀疏矩阵的C程序

矩阵 C程序 稀疏
189 2023-09-01

在给定的矩阵中,当大多数元素为零时,我们称之为稀疏矩阵。 例如 - 3 x3 矩阵

1 1 0
0 0 2
0 0 0

在这个矩阵中,大部分元素都是零,所以它是一个稀疏矩阵。

问题

检查一个矩阵是否是稀疏矩阵。

解决方案

  • 让我们假设矩阵中的零大于(行数 * 列数)/2。

  • 那么,这个矩阵就是一个稀疏矩阵,否则不是。

程序

以下是检查给定矩阵是否为稀疏矩阵的程序:

 演示

#include<stdio.h>
#include<stdlib.h>
int main(){
   int row,col,i,j,a[10][10],count = 0;
   printf("Enter row

");    scanf("%d",&row);    printf("Enter Column

");    scanf("%d",&col);    printf("Enter Element of Matrix1

");    for(i = 0; i < row; i++){       for(j = 0; j < col; j++){          scanf("%d",&a[i][j]);       }    }    printf("Elements are:

");    for(i = 0; i < row; i++){       for(j = 0; j < col; j++){          printf("%dt",a[i][j]);       }       printf("

");    }    /*checking sparse of matrix*/    for(i = 0; i < row; i++){       for(j = 0; j < col; j++){          if(a[i][j] == 0)             count++;       }    }    if(count > ((row * col)/2))       printf("Matrix is a sparse matrix

");    else       printf("Matrix is not sparse matrix

"); }

输出

当执行上述程序时,会产生以下结果 -

Run 1:
Enter row
3
Enter Column
2
Enter Element of Matrix1
1 0 2 0 2 0
Elements are:
1 0
2 0
2 0
Matrix is not sparse matrix
Run 2:
Enter row
3
Enter Column
2
Enter Element of Matrix1
1 0 0 0 0 0
Elements are:
1 0
0 0
0 0
Matrix is a sparse matrix