如何使用函数将两个二维数组相加并存储并显示在第三个数组中?

问题描述 投票:0回答:1

我刚刚开始学习C语言。

我已经开始了数组的主题,现在我对如何添加两个二维数组并使用函数在第三个二维数组中存储和显示它们感到困惑...

PS。我附上了上面提到的代码。

#include<stdio.h>

void displayA1(int a[3][3])
{
    printf("\n The 1st Array is: \n");
    for(int i=0;i<3;i++)
    {
        for(int j=0;j<3;j++){
        printf(" %d ",a[i][j]);
    }
        }

}



void displayB1(int b[3][3])
{
    printf("\n The 2nt Array is: \n");
    for(int i=0;i<3;i++)
    {
        for(int j=0;j<3;j++){
        printf(" %d ",b[i][j]);
    }
        }
}



int doAdd(int a[3][3] , int b[3][3] , int c[3][3])
{
    int sum=0;

    for(int i=0;i<3;i++)
    {
        for(int j=0;j<3;j++)
        {
           sum = sum + a[i][j] + b[i][j];

        }
            
    }
        return sum;


}

int main()


{

    int a[3][3];
    int b[3][3];
    int c[3][3];

    for(int i=0;i<3;i++)
    {
        for(int j=0;j<3;j++)
            {
                printf("Enter the Elements: ");
                scanf("%d",&a[i][j]);
            }
    }


        printf("\n****************************\n");

    for(int i=0;i<3;i++)
    {
        for(int j=0;j<3;j++)
            {
                printf("Enter the Elements: ");
                scanf("%d",&b[i][j]);
            }
    }




    displayA1(a);
    displayB1(b);
    int sum = doAdd(a,b,c);

    printf("\n\n The Addition of two Arrays is: %d ",sum);




    return 0;
}

我编写了一个程序,但结果显示两个数组的各个元素的总和..

很高兴获得帮助。

arrays c multidimensional-array addition
1个回答
0
投票

您需要将

a[i][j] + b[i][j]
的结果分配给
c[i][j]
,以便使单独添加的结果在
doAdd
函数之外可用。

示例:

int doAdd(const int a[3][3], const int b[3][3], int c[3][3]) {
    int sum = 0;

    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            c[i][j] = a[i][j] + b[i][j];
            sum += c[i][j];
        }
    }
    return sum;
}
© www.soinside.com 2019 - 2024. All rights reserved.