一维实型数组 编写函数计算一维实型数组前n个元素的最大值、最小值和平均值。数组、n、最大值、最小值和平均值均作为函数形参,函数无返回值;在主函数中输入数据,调用函数得到结果。(要求用指针方法实现) 相关知识 5.指针作为函数参数(与数组名作为函数参数进行比较),函数返回指针值,函数指针 c语言
时间: 2024-03-24 10:37:46 浏览: 59
好的,这是一个关于一维实型数组的问题,下面是代码示例:
```c
#include <stdio.h>
void calculate(float *arr, int n, float *max, float *min, float *avg) {
// 初始化最大值、最小值和平均值
*max = arr[0];
*min = arr[0];
*avg = 0.0f;
// 计算最大值、最小值和平均值
for (int i = 0; i < n; i++) {
if (arr[i] > *max) {
*max = arr[i];
}
if (arr[i] < *min) {
*min = arr[i];
}
*avg += arr[i];
}
*avg /= n;
}
int main() {
int n;
printf("请输入数组长度:");
scanf("%d", &n);
float arr[n];
printf("请输入数组元素:");
for (int i = 0; i < n; i++) {
scanf("%f", &arr[i]);
}
float max, min, avg;
calculate(arr, n, &max, &min, &avg);
printf("最大值:%.2f\n最小值:%.2f\n平均值:%.2f\n", max, min, avg);
return 0;
}
```
在上面的代码中,我们定义了一个名为 `calculate` 的函数,用于计算一维实型数组前 `n` 个元素的最大值、最小值和平均值,这里使用了指针作为函数参数,以实现对最大值、最小值和平均值的传递和修改。
在 `main` 函数中,我们先是读入了数组长度 `n` 和数组元素,然后调用 `calculate` 函数来计算最大值、最小值和平均值,最后输出结果。
阅读全文