C語(yǔ)言復(fù)合矩陣怎么實(shí)現(xiàn)

小億
85
2023-12-15 21:21:21

在C語(yǔ)言中,可以使用二維數(shù)組來(lái)表示復(fù)合矩陣。復(fù)合矩陣由真實(shí)部分和虛部分組成,可以使用兩個(gè)二維數(shù)組分別存儲(chǔ)。

下面是一個(gè)簡(jiǎn)單的示例代碼:

#include <stdio.h>

#define ROWS 3
#define COLS 3

typedef struct {
    int real[ROWS][COLS];
    int imaginary[ROWS][COLS];
} ComplexMatrix;

void printComplexMatrix(ComplexMatrix matrix) {
    for (int i = 0; i < ROWS; i++) {
        for (int j = 0; j < COLS; j++) {
            printf("%d+%di ", matrix.real[i][j], matrix.imaginary[i][j]);
        }
        printf("\n");
    }
}

int main() {
    ComplexMatrix matrix = {
        .real = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}},
        .imaginary = {{10, 20, 30}, {40, 50, 60}, {70, 80, 90}}
    };

    printComplexMatrix(matrix);

    return 0;
}

這個(gè)示例代碼定義了一個(gè)復(fù)合矩陣的數(shù)據(jù)結(jié)構(gòu)ComplexMatrix,包含了真實(shí)部分real和虛部分imaginary兩個(gè)二維數(shù)組。printComplexMatrix函數(shù)用于打印復(fù)合矩陣的內(nèi)容。

main函數(shù)中創(chuàng)建了一個(gè)復(fù)合矩陣matrix,并初始化了真實(shí)部分和虛部分的值。然后調(diào)用printComplexMatrix函數(shù)打印出復(fù)合矩陣的內(nèi)容。

輸出結(jié)果為:

1+10i 2+20i 3+30i 
4+40i 5+50i 6+60i 
7+70i 8+80i 9+90i 

這樣就可以使用二維數(shù)組來(lái)實(shí)現(xiàn)C語(yǔ)言中的復(fù)合矩陣。

0