4.3
编写函数,寻找具有n个元素的一维数组中的最大值和最小值,并返回数组元素的平均值,函数原形如下:
double fun(int a[],int n,int *max,int *min);
如输入:
5
2 4 5 3 1
则输出为:
5
1
#include<stdio.h>
double fun(int a[], int n, int *max, int *min)
{
int i, s;
*max = *min = s = a[0];
for (i = 1; i < n; i++)
{
if (a[i] > *max)
*max = a[i];
if (a[i] < *min)
*min = a[i];
s += a[i];
}
return (float)s / n;
}
int main()
{
int n, max, min, i, a[100];
float av;
scanf("%d", &n);
for (i = 0; i < n - 1; i++)
scanf("%d,", &a[i]);
scanf("%d", &a[i]);
av = fun(a, n, &max, &min);
printf("%d\n%d\n%f\n", max, min, av);
return 0;
}