//找出包含20元素的整型数组中的最大值、最小值,并计算数组所有元素的平均值, //按要求完成如下工作: //(1)使用指针作为函数参数设计一个函数实现以上功能 //(2)使用引用作为函数参数设计一个函数实现以上功能 //要求在main函数中使用随机数初始化数组,并在main函数中输出数组的最大值、最小值和平均值
时间: 2023-03-26 17:01:05 浏览: 94
使用指针作为函数参数设计一个函数实现以上功能:
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void getMinMaxAvg(int *arr, int size, int *max, int *min, float *avg) {
int sum = ;
*max = *min = arr[];
for (int i = ; i < size; i++) {
if (arr[i] > *max) {
*max = arr[i];
}
if (arr[i] < *min) {
*min = arr[i];
}
sum += arr[i];
}
*avg = (float)sum / size;
}
int main() {
int arr[20];
srand(time(NULL));
for (int i = ; i < 20; i++) {
arr[i] = rand() % 100;
printf("%d ", arr[i]);
}
printf("\n");
int max, min;
float avg;
getMinMaxAvg(arr, 20, &max, &min, &avg);
printf("max: %d, min: %d, avg: %.2f\n", max, min, avg);
return ;
}
```
使用引用作为函数参数设计一个函数实现以上功能:
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void getMinMaxAvg(int *arr, int size, int &max, int &min, float &avg) {
int sum = ;
max = min = arr[];
for (int i = ; i < size; i++) {
if (arr[i] > max) {
max = arr[i];
}
if (arr[i] < min) {
min = arr[i];
}
sum += arr[i];
}
avg = (float)sum / size;
}
int main() {
int arr[20];
srand(time(NULL));
for (int i = ; i < 20; i++) {
arr[i] = rand() % 100;
printf("%d ", arr[i]);
}
printf("\n");
int max, min;
float avg;
getMinMaxAvg(arr, 20, max, min, avg);
printf("max: %d, min: %d, avg: %.2f\n", max, min, avg);
return ;
}
```
阅读全文