用C语言编写题目p2822的代码
时间: 2024-03-20 11:43:29 浏览: 19
题目p2822是指洛谷上的一道题目,需要用C语言编写一个程序来实现。以下是一个可能的参考答案:
```c
#include <stdio.h>
int main() {
int n, m, k, i, j;
scanf("%d%d%d", &n, &m, &k);
int a[n][m], b[m][k], c[n][k];
// 输入矩阵A
for (i = 0; i < n; i++) {
for (j = 0; j < m; j++) {
scanf("%d", &a[i][j]);
}
}
// 输入矩阵B
for (i = 0; i < m; i++) {
for (j = 0; j < k; j++) {
scanf("%d", &b[i][j]);
}
}
// 计算矩阵C
for (i = 0; i < n; i++) {
for (j = 0; j < k; j++) {
int sum = 0;
for (int x = 0; x < m; x++) {
sum += a[i][x] * b[x][j];
}
c[i][j] = sum;
}
}
// 输出矩阵C
for (i = 0; i < n; i++) {
for (j = 0; j < k; j++) {
printf("%d ", c[i][j]);
}
printf("\n");
}
return 0;
}
```
该程序的功能是读入两个矩阵A和B,计算它们的乘积并输出结果矩阵C。其中,矩阵A是一个n行m列的矩阵,矩阵B是一个m行k列的矩阵,矩阵C是一个n行k列的矩阵。程序中使用了三个二维数组a、b、c来存储矩阵A、B、C的元素。计算矩阵C的过程中,使用了三层循环来实现矩阵乘法的定义。最后,程序输出矩阵C的元素。