c语言使用自定义函数找出一个一堆数组中最大值个和其在数组中的位置
时间: 2023-06-04 21:04:14 浏览: 114
很高兴能回答你的问题!关于找出一个一堆数组中最大值个和其在数组中的位置,可以编写一个自定义函数来实现。首先,可以定义一个函数,接受一个整型数组作为参数,返回一个结构体类型的变量,结构体中包含最大值和最大值所在的位置信息。可以参考以下的代码:
```
#include <stdio.h>
struct Result {
int max;
int pos;
};
struct Result findMax(int arr[], int size) {
struct Result res;
res.max = arr[0];
res.pos = 0;
for (int i = 1; i < size; i++) {
if (arr[i] > res.max) {
res.max = arr[i];
res.pos = i;
}
}
return res;
}
int main() {
int arr[] = {1, 8, 5, 6, 10, 3};
int size = sizeof(arr) / sizeof(arr[0]);
struct Result res = findMax(arr, size);
printf("最大值为:%d,位置为:%d\n", res.max, res.pos);
return 0;
}
```
这里我们使用了结构体来保存最大值和其位置信息。在函数中,首先将第一个元素设为最大值,并将其位置设为0,然后遍历数组,如果发现有比当前最大值更大的数,就更新最大值和位置信息。最后返回一个结构体类型的变量,表示最大值和其位置信息。在主函数中调用这个函数即可得到最大值和其位置。
阅读全文