c语言编程笔录

首页 >   > 笔记大全

笔记大全

c语言矩阵加法

更新时间:2024-01-11

前言

矩阵加法是一种常见的数学操作,而用C语言编写矩阵加法的代码可以帮助我们实现两个矩阵相加的功能。在本篇回答中,我将向您展示使用C语言编写矩阵加法的代码,并对其进行分析和解释。

代码实现

#include 

void matrixAddition(int rows, int cols, int matrix1[][cols], int matrix2[][cols], int result[][cols]) {
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            result[i][j] = matrix1[i][j] + matrix2[i][j];
        }
    }
}

int main() {
    int rows, cols;
    
    printf("请输入矩阵的行数: ");
    scanf("%d", &rows);
    
    printf("请输入矩阵的列数: ");
    scanf("%d", &cols);
    
    int matrix1[rows][cols];
    int matrix2[rows][cols];
    int result[rows][cols];
    
    printf("请输入矩阵1的元素: \n");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            scanf("%d", &matrix1[i][j]);
        }
    }
    
    printf("请输入矩阵2的元素: \n");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            scanf("%d", &matrix2[i][j]);
        }
    }
    
    matrixAddition(rows, cols, matrix1, matrix2, result);
    
    printf("矩阵相加的结果为: \n");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            printf("%d ", result[i][j]);
        }
        printf("\n");
    }
    
    return 0;
}

代码解释

上述代码首先通过用户输入获取矩阵的行数和列数。然后,定义了三个二维数组变量分别用于存储两个输入矩阵的元素以及相加结果的矩阵。接下来,使用两个嵌套的for循环遍历矩阵,并将对应位置的元素相加后存储在result矩阵中。

在main函数中,通过两个嵌套的for循环,分别获取用户输入的矩阵1和矩阵2的元素,并存储在对应的数组变量中。然后,调用matrixAddition函数进行矩阵加法运算,并将结果存储在result矩阵中。最后,使用两个嵌套的for循环打印出相加结果的矩阵。

总结

通过使用C语言编写上述代码,我们成功实现了矩阵加法的功能。该代码能够通过用户输入获取两个矩阵的元素,并输出相加结果的矩阵。您可以通过在main函数中修改输入矩阵的元素来进行不同的测试和实验。