c语言两个矩阵相加
作者:野牛程序员:2023-07-27 07:27:23C语言阅读 2923
在C语言中,两个矩阵相加的操作需要确保两个矩阵具有相同的维度,即行数和列数相等。下面是一个简单的C语言程序,用于计算两个矩阵的相加:
#include <stdio.h>
// 定义矩阵的最大行数和列数
#define MAX_ROWS 100
#define MAX_COLS 100
// 函数用于输入矩阵
void inputMatrix(int matrix[MAX_ROWS][MAX_COLS], int rows, int cols) {
printf("输入矩阵元素:\\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("元素[%d][%d]: ", i, j);
scanf("%d", &matrix[i][j]);
}
}
}
// 函数用于输出矩阵
void printMatrix(int matrix[MAX_ROWS][MAX_COLS], int rows, int cols) {
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("%d\\t", matrix[i][j]);
}
printf("\\n");
}
}
// 函数用于计算两个矩阵的相加结果
void addMatrices(int matrix1[MAX_ROWS][MAX_COLS], int matrix2[MAX_ROWS][MAX_COLS], int result[MAX_ROWS][MAX_COLS], int rows, int 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;
int matrix1[MAX_ROWS][MAX_COLS];
int matrix2[MAX_ROWS][MAX_COLS];
int result[MAX_ROWS][MAX_COLS];
// 输入矩阵1的行数和列数
printf("输入矩阵1的行数和列数:");
scanf("%d %d", &rows, &cols);
// 输入矩阵1的元素
printf("输入矩阵1:\\n");
inputMatrix(matrix1, rows, cols);
// 输入矩阵2的元素
printf("输入矩阵2:\\n");
inputMatrix(matrix2, rows, cols);
// 计算矩阵相加
addMatrices(matrix1, matrix2, result, rows, cols);
// 显示结果
printf("相加后的结果:\\n");
printMatrix(result, rows, cols);
return 0;
}在这个程序中,定义了输入矩阵、输出矩阵和矩阵相加的函数,然后在main函数中输入两个矩阵,计算它们的相加结果并输出。记得确保输入的两个矩阵具有相同的行数和列数,否则无法进行相加操作。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:c语言两个一元多项式相乘编程
- 下一篇:c语言两个指针指的数相乘
