C 程序比较两个矩阵是否相等
cserver side programmingprogramming更新于 2024/11/3 5:42:00
用户必须输入两个矩阵的顺序和两个矩阵的元素。然后,比较这两个矩阵。
如果矩阵元素和大小都相等,则显示两个矩阵相等。
如果矩阵大小相等但元素不相等,则显示矩阵可以比较但不相等。
如果大小和元素不匹配,则显示矩阵无法比较。
程序
以下是 C 程序,用于比较两个矩阵是否相等 −
#include <stdio.h> #include <conio.h> main(){ int A[10][10], B[10][10]; int i, j, R1, C1, R2, C2, flag =1; printf("Enter the order of the matrix A
"); scanf("%d %d", &R1, &C1); printf("Enter the order of the matrix B
"); scanf("%d %d", &R2,&C2); printf("Enter the elements of matrix A
"); for(i=0; i<R1; i++){ for(j=0; j<C1; j++){ scanf("%d",&A[i][j]); } } printf("Enter the elements of matrix B
"); for(i=0; i<R2; i++){ for(j=0; j<C2; j++){ scanf("%d",&B[i][j]); } } printf("MATRIX A is
"); for(i=0; i<R1; i++){ for(j=0; j<C1; j++){ printf("%3d",A[i][j]); } printf("
"); } printf("MATRIX B is
"); for(i=0; i<R2; i++){ for(j=0; j<C2; j++){ printf("%3d",B[i][j]); } printf("
"); } /* Comparing two matrices for equality */ if(R1 == R2 && C1 == C2){ printf("Matrices can be compared
"); for(i=0; i<R1; i++){ for(j=0; j<C2; j++){ if(A[i][j] != B[i][j]){ flag = 0; break; } } } } else{ printf(" Cannot be compared
"); exit(1); } if(flag == 1 ) printf("Two matrices are equal
"); else printf("But,two matrices are not equal
"); }
输出
当执行上述程序时,它会产生以下结果 −
Run 1: Enter the order of the matrix A 2 2 Enter the order of the matrix B 2 2 Enter the elements of matrix A 1 2 3 4 Enter the elements of matrix B 1 2 3 4 MATRIX A is 1 2 3 4 MATRIX B is 1 2 3 4 Matrices can be compared Two matrices are equal Run 2: Enter the order of the matrix A 2 2 Enter the order of the matrix B 2 2 Enter the elements of matrix A 1 2 3 4 Enter the elements of matrix B 5 6 7 8 MATRIX A is 1 2 3 4 MATRIX B is 5 6 7 8 Matrices can be compared But,two matrices are not equal