014:编写函数,求出二维数组中每列中的最大元素,并保存到数组中。在main函数中验证。要求:二维数组的行数、列数、数组元素均在main函数中由键盘输入。
时间: 2024-03-20 08:42:37 浏览: 56
未知数x的系数可以用数组a表示其元素为-C++数组与指针
好的,以下是实现该函数的代码示例:
```c
#include <stdio.h>
void get_column_max(int arr[][100], int row, int col, int res[]) {
for (int j = 0; j < col; j++) {
int max = arr[0][j];
for (int i = 1; i < row; i++) {
if (arr[i][j] > max) {
max = arr[i][j];
}
}
res[j] = max;
}
}
int main() {
int row, col;
printf("请输入二维数组的行数和列数:");
scanf("%d%d", &row, &col);
int arr[100][100];
printf("请输入二维数组:\n");
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
scanf("%d", &arr[i][j]);
}
}
int res[100];
get_column_max(arr, row, col, res);
printf("每列最大元素为:\n");
for (int j = 0; j < col; j++) {
printf("%d ", res[j]);
}
printf("\n");
return 0;
}
```
在该代码中,我们定义了一个函数 `get_column_max`,该函数的作用是求出一个二维数组中每列中的最大元素,并将这些最大元素保存到一个数组中。该函数的参数包括一个二维数组、该数组的行数和列数以及一个保存结果的数组。
在函数中,我们使用两个循环来遍历数组,首先遍历列,然后在每一列中遍历行,找到该列中的最大元素,并将其保存到结果数组中。
在 `main` 函数中,我们首先通过键盘输入获取二维数组的行数和列数,然后再通过循环将二维数组的元素逐一输入。接着调用 `get_column_max` 函数,将结果保存到 `res` 数组中,并通过循环输出每列的最大元素。
希望这个示例能够帮助你理解如何实现题目要求的函数。
阅读全文