c语言试编程求3*3二维数组中最大元素及其所在的行、列位置
时间: 2024-12-15 07:18:33 浏览: 6
在C语言中,我们可以创建一个函数来寻找3x3二维数组中最大的元素以及其所在的行和列索引。以下是一个简单的示例:
```c
#include <stdio.h>
// 定义一个结构体用于存储最大值及其坐标
typedef struct {
int max_value;
int row;
int col;
} MaxInfo;
// 函数寻找最大元素及其坐标
MaxInfo findMaxIn3x3(int arr[3][3]) {
MaxInfo max_info = {arr[0][0], 0, 0}; // 初始化为第一行第一列的元素
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (arr[i][j] > max_info.max_value) {
max_info.max_value = arr[i][j];
max_info.row = i;
max_info.col = j;
}
}
}
return max_info;
}
int main() {
int arr[3][3] = {
{5, 3, 9},
{2, 7, 1},
{4, 6, 8}
};
MaxInfo max_data = findMaxIn3x3(arr);
printf("The maximum element is %d and it's located at row %d and column %d.\n",
max_data.max_value, max_data.row + 1, max_data.col + 1); // 由于索引从0开始,加1转换成用户习惯的1-based索引
return 0;
}
```
这个程序首先定义了一个 `MaxInfo` 结构体,用于保存最大值及其对应的位置。然后,在 `findMaxIn3x3` 函数中,我们遍历整个二维数组,如果发现某个元素大于当前的最大值,我们就更新最大值及其坐标。最后在 `main` 函数中,我们调用这个函数并打印出结果。
阅读全文