用c输出二维数组每列最小值
时间: 2024-12-19 12:14:17 浏览: 17
在C语言中,为了找出二维数组每列的最小值,你可以遍历每一列并维护每个列的最小值。下面是一个简单的示例,假设我们有一个名为`matrix`的二维数组:
```c
#include <stdio.h>
#define ROWS 3 // 行数
#define COLS 4 // 列数
// 函数声明,返回指定行的最小值
int findMinInRow(int row, int array[][COLS]);
int main() {
int matrix[ROWS][COLS] = { /* 具体填充你的二维数组 */ };
// 初始化一个一维数组来保存每列的最小值
int column_mins[COLS];
// 计算并存储每列的最小值
for (int i = 0; i < COLS; i++) {
column_mins[i] = findMinInRow(0, &matrix[0][i]); // 取第一行作为基准
}
printf("每列的最小值分别为:\n");
for (int i = 0; i < COLS; i++) {
printf("第 %d 列的最小值: %d\n", i+1, column_mins[i]);
}
return 0;
}
// 辅助函数,找到给定行的特定列元素的最小值
int findMinInRow(int row, int *column) {
int min_val = column[0];
for (int j = 1; j < COLS; j++) {
if (column[j] < min_val)
min_val = column[j];
}
return min_val;
}
```
在这个例子中,`findMinInRow`函数接受一个行号和指向那一列元素的指针,然后计算并返回这一列的最小值。在主函数中,我们将这个过程应用于所有列,将结果存储在`column_mins`数组中,并打印出来。
阅读全文