C语言:编写一个函数,求10个数字的最大值,最小值,平均值,以及最大值所在的下标和最小值所在的下标
时间: 2023-09-09 21:06:23 浏览: 374
C语言试题及答案详解
以下是一个求解10个数字的最大值、最小值、平均值,以及最大值所在下标和最小值所在下标的C语言函数:
```c
#include <stdio.h>
void get_max_min_avg(int arr[], int size, int *max, int *min, float *avg, int *max_index, int *min_index) {
// 初始化最大值、最小值、平均值、最大值下标和最小值下标
*max = arr[0];
*min = arr[0];
*avg = 0;
*max_index = 0;
*min_index = 0;
// 循环遍历数组
for (int i = 0; i < size; i++) {
// 更新最大值和最大值下标
if (arr[i] > *max) {
*max = arr[i];
*max_index = i;
}
// 更新最小值和最小值下标
if (arr[i] < *min) {
*min = arr[i];
*min_index = i;
}
// 累加求和
*avg += arr[i];
}
// 求平均值
*avg /= size;
}
int main() {
int arr[] = {5, 9, 3, 7, 11, 2, 8, 4, 6, 10};
int max, min, max_index, min_index;
float avg;
get_max_min_avg(arr, 10, &max, &min, &avg, &max_index, &min_index);
printf("最大值为:%d\n", max);
printf("最小值为:%d\n", min);
printf("平均值为:%.2f\n", avg);
printf("最大值下标为:%d\n", max_index);
printf("最小值下标为:%d\n", min_index);
return 0;
}
```
输出结果为:
```
最大值为:11
最小值为:2
平均值为:6.50
最大值下标为:4
最小值下标为:5
```
阅读全文