1. 程式人生 > >C語言編程判斷兩個矩陣是否相等(n階矩陣)

C語言編程判斷兩個矩陣是否相等(n階矩陣)

運行 can pre \n ++ 8 8 n) i++ pause

主要利用二維數組的模型來存儲矩陣

判斷時一一比較,若有一對元素不相同,則矩陣不相同

源代碼:

#include<stdio.h>
#include<stdlib.h>
int main()
{
    int a[100][100], b[100][100];
    int n, i, m;
    printf("請輸入要比較的矩陣行列數\n");
    scanf("%d", &n);
    printf("請輸入第一個矩陣的元素\n");
    for (i = 0; i <= n - 1;i++)
    for (m = 0; m <= n - 1; m++)
        scanf("%d",&a[i][m]);
    printf("請輸入第二個矩陣的元素\n");
    for (i = 0; i <= n - 1; i++)
    for (m = 0; m <= n - 1; m++)
        scanf("%d", &b[i][m]);
    printf("輸入的是一個%d階矩陣\n兩個矩陣為:\n", n);
    for (i = 0; i <= n - 1; i++)
    for (m = 0; m <= n - 1; m++)
    {
        printf("%4d", a[i][m]);
        if (m == (n - 1))
            printf("\n");
    }
    printf("-------------------------------------------\n");
    for (i = 0; i <= n - 1; i++)
    for (m = 0; m <= n - 1; m++)
    {
        printf("%4d", b[i][m]);
        if (m == (n - 1))
            printf("\n");
    }
    printf("-------------------------------------------\n");
    for (i = 0; i <= n - 1; i++)
    for (m = 0; m <= n - 1; m++)
    {
        if (a[i][m] != b[i][m])//是否相等判斷條件
        {
            printf("輸入的兩個矩陣不相同\n");
            system("pause");
            return 0;
        }
    }
    printf("輸入的兩個矩陣相同\n");
    system("pause");
    return 0;

}

運行結果:
請輸入要比較的矩陣行列數
3
請輸入第一個矩陣的元素
1 2 3 4 5 6 7 8 9
請輸入第二個矩陣的元素
1 2 3 4 5 6 7 8 8
輸入的是一個3階矩陣
兩個矩陣為:
1 2 3
4 5 6
7 8 9


1 2 3
4 5 6
7 8 8


輸入的兩個矩陣不相同
請按任意鍵繼續. . .

C語言編程判斷兩個矩陣是否相等(n階矩陣)