C语言--定义两个3×4的矩阵,用数组名作为函数实参,分别求两个矩阵中的最大值。
时间: 2024-05-04 11:16:20 浏览: 12
好的,让我来回答你的问题。你可以采用以下的C语言代码来实现:
```c
#include <stdio.h>
#define ROW 3
#define COL 4
int max(int mat[][COL], int r, int c)
{
int max_val = mat[0][0];
for (int i = 0; i < r; i++) {
for (int j = 0; j < c; j++) {
if (mat[i][j] > max_val) {
max_val = mat[i][j];
}
}
}
return max_val;
}
int main(void)
{
int mat1[ROW][COL] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
int mat2[ROW][COL] = {{12, 11, 10, 9}, {8, 7, 6, 5}, {4, 3, 2, 1}};
int max_val1 = max(mat1, ROW, COL);
int max_val2 = max(mat2, ROW, COL);
printf("max_val1 = %d\n", max_val1);
printf("max_val2 = %d\n", max_val2);
return 0;
}
```
这个程序定义了一个名为`max()`的函数,接收一个二维数组指针和数组的行和列的数量作为参数。该函数在数组中查找最大的值,并将其返回。主函数定义了两个3×4的矩阵`mat1`和`mat2`,分别调用`max()`函数来查找它们的最大值,然后将结果输出。