首页 >后端开发 >C++ >稀疏矩阵的C程序

稀疏矩阵的C程序

PHPz
PHPz转载
2023-08-27 17:37:06649浏览

稀疏矩阵的C程序

在给定的矩阵中,当大多数元素为零时,我们称之为稀疏矩阵。 例如 - 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</p><p>");
   scanf("%d",&row);
   printf("Enter Column</p><p>");
   scanf("%d",&col);
   printf("Enter Element of Matrix1</p><p>");
   for(i = 0; i < row; i++){
      for(j = 0; j < col; j++){
         scanf("%d",&a[i][j]);
      }
   }
   printf("Elements are:</p><p>");
   for(i = 0; i < row; i++){
      for(j = 0; j < col; j++){
         printf("%d\t",a[i][j]);
      }
      printf("</p><p>");
   }
   /*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 </p><p>");
   else
      printf("Matrix is not sparse matrix</p><p>");
}

输出

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

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

以上是稀疏矩阵的C程序的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除