C程序 将两个矩阵相加

yizhihongxing

首先,写一个程序可以将两个矩阵相加,需要按照以下步骤进行:

  1. 定义两个矩阵,并初始化数据
  2. 定义一个结果矩阵
  3. 遍历两个矩阵,并将对应元素相加,然后存放到结果矩阵中
  4. 输出结果矩阵

下面是一个标准的C程序代码示例:

#include <stdio.h>
#define ROW 2
#define COL 2
void matrix_add(int matrix1[][COL], int matrix2[][COL], int result[][COL]);

int main()
{
    int matrix1[ROW][COL] = {{1, 2},
                             {3, 4}};

    int matrix2[ROW][COL] = {{5, 6},
                             {7, 8}};

    int result[ROW][COL];

    matrix_add(matrix1, matrix2, result);

    for (int i = 0; i < ROW; i++)
    {
        for (int j = 0; j < COL; j++)
        {
            printf("%d ", result[i][j]);
        }
        printf("\n");
    }

    return 0;
}

void matrix_add(int matrix1[][COL], int matrix2[][COL], int result[][COL])
{
    for (int i = 0; i < ROW; i++)
    {
        for (int j = 0; j < COL; j++)
        {
            result[i][j] = matrix1[i][j] + matrix2[i][j];
        }
    }
}

该代码定义了一个2x2的矩阵,并将其与另外一个2x2的矩阵相加,并将结果存放在另一个矩阵中,最后输出结果矩阵。

下面再给出一个两个矩阵大小不一致的示例:

#include <stdio.h>
#define ROW1 2
#define COL1 3
#define ROW2 3
#define COL2 2
void matrix_add(int matrix1[][COL1], int matrix2[][COL2], int result[][COL2], int row1, int col1, int row2, int col2);

int main()
{
    int matrix1[ROW1][COL1] = {{1, 2, 3},
                               {4, 5, 6}};

    int matrix2[ROW2][COL2] = {{7, 8},
                               {9, 10},
                               {11, 12}};

    int result[ROW1][COL2];

    matrix_add(matrix1, matrix2, result, ROW1, COL1, ROW2, COL2);

    for (int i = 0; i < ROW1; i++)
    {
        for (int j = 0; j < COL2; j++)
        {
            printf("%d ", result[i][j]);
        }
        printf("\n");
    }

    return 0;
}

void matrix_add(int matrix1[][COL1], int matrix2[][COL2], int result[][COL2], int row1, int col1, int row2, int col2)
{
    if (row1 != row2 || col1 != col2)
    {
        printf("The size of matrices is not the same!");
        return;
    }

    for (int i = 0; i < row1; i++)
    {
        for (int j = 0; j < col2; j++)
        {
            result[i][j] = matrix1[i][j] + matrix2[i][j];
        }
    }
}

该代码定义了一个2x3的矩阵和一个3x2的矩阵,将它们相加得到一个2x2的结果矩阵,并输出。在函数中加入防御性编程,若两个矩阵的行列数不相等则输出错误信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C程序 将两个矩阵相加 - Python技术站

(0)
上一篇 2023年5月9日
下一篇 2023年5月9日

相关文章

  • C语言简明分析选择结构和循环结构的使用

    C语言简明分析选择结构和循环结构的使用 选择结构的使用 在 C 语言中,选择结构(if-else)用来在程序中根据不同的条件来执行不同的代码。其基本语法格式如下: if (表达式) { 代码块1; } else { 代码块2; } 其中,表达式是一个布尔表达式,如果它的值为真(非0),则将执行代码块1;否则,将执行代码块2。 示例1:判断一个数的正负性 #i…

    C 2023年5月23日
    00
  • C++ Futures与Promises线程使用示例讲解

    C++ Futures与Promises是一种线程模型,用于异步操作的处理和结果的返回。在许多情况下,异步操作可以显著提高程序的性能和响应能力。本文将介绍如何使用C++ Futures与Promises实现异步操作。下面我们通过两个示例来了解C++ Futures与Promises的使用。 示例一 假设我们需要统计一个文本文件中某个单词出现的次数。由于文本文…

    C 2023年5月22日
    00
  • c++中do{…}while(0)的意义和用法

    当我们希望一个块语句可以像一个普通的表达式一样使用时,就可以使用C++中的do-while(0)语法。 do-while(0)是一个完整的语法块,由关键字“do”和“while”及他们所包含的部分组成,这个语法块被包含在一对圆括号中。这种块语句通常用于宏展开。 do-while(0)主要有以下两个作用: 使块语句可以像表达式一样使用 使用do-while(0…

    C 2023年5月23日
    00
  • C++头文件和cpp文件的原理分析

    下面我会为你详细讲解“C++头文件和cpp文件的原理分析”的完整攻略,包含以下内容: C++头文件和cpp文件的作用: 头文件和cpp文件相当于C++中的两个重要的分离式编译的机制。「头文件」通常包含程序所用到的函数的声明和类的定义,而「cpp文件」则包含函数的实现和类的方法定义。C++通过将程序分割为不同的文件来提高软件的可维护性和可扩展性,使得每个文件包…

    C 2023年5月23日
    00
  • C++ Boost Algorithm算法超详细精讲

    C++ Boost Algorithm算法超详细精讲 Boost是一套C++的开源库,其中包含了许多优秀的算法。本文通过一些常用算法的具体讲解,帮助读者熟练掌握Boost库的使用。 安装Boost库 在使用Boost之前,我们需要先安装Boost库。Boost库可以通过官方网站下载,下载完毕后通过以下步骤进行安装: 解压下载的Boost库文件 打开终端,进入…

    C 2023年5月23日
    00
  • 详解关于JSON.parse()和JSON.stringify()的性能小测试

    关于“详解关于JSON.parse()和JSON.stringify()的性能小测试”攻略,以下是完整的说明: 标题 1. 概述 在JavaScript中,JSON.parse()和JSON.stringify()是两个常用的方法,前者将JSON格式的字符串转换为JavaScript对象,后者则是将JavaScript对象转换为JSON格式的字符串。同时,在…

    C 2023年5月23日
    00
  • C语言全面梳理文件操作方法

    C语言全面梳理文件操作方法 文件操作是C语言中非常重要的一部分,本文将对文件操作进行详细的介绍,包括文件打开、关闭、读写、修改等各种操作方法。 文件打开 使用C语言进行文件操作时,首先要做的事情是打开文件。文件在C语言中被视为一种特殊的数据类型,需要通过文件指针来进行访问。打开文件时,需要指定文件名、访问模式等参数。 文件打开的常用函数有fopen()和fr…

    C 2023年5月23日
    00
  • c语言实现从源文件从文本到可执行文件经历的过程

    C语言实现从源文件到可执行文件的过程可以概括为以下几个步骤: 编写源代码文件 预处理源代码文件 编译预处理后的源代码文件生成目标文件 链接目标文件生成可执行文件 下面我将详细讲解每一步骤和其示例说明。 1. 编写源代码文件 源代码文件是指程序员编写的包含C语言程序源代码的文本文件。它通常使用文件扩展名为.c或.cpp。源代码文件的内容包括程序员编写的程序逻辑…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部