从键盘输入20个整数存入数组,分别编写求数组的最大值、最小值和平均值得函数,主函数实现数据的输入、调用函数分别输出最大值、最小值和平均值。

从键盘输入20个整数存入数组,分别编写求数组的最大值、最小值和平均值得函数,主函数实现数据的输入、调用函数分别输出最大值、最小值和平均值。


#include<stdio.h>

int maxValue(int* arr, int len){

  if(arr == null){
    return -1;
  }

  int max = arr[0];
  int len = sizeof(arr) / sizeof(arr[0]);
  for (i = 0; i < len; i++)
  {
    if (max < arr[i])
    {
      max = arr[i];
    }
  }
  return max;
}

int minValue(int* arr, int len){
    if(arr == null){
    return -1;
  }

  int min = arr[0];
  int len = sizeof(arr) / sizeof(arr[0]);
  for (i = 0; i < len; i++)
  {
    if (min > arr[i])
    {
      min = arr[i];
    }
  }

  return min;
}

float average(int* arr){
  if(arr == null){
    return 0.0;
  }
  float varAge = 0.0;
  int sum = 0;
  int len = sizeof(arr) / sizeof(arr[0]);
  for (i = 0; i < len; i++)
  {
    sum += arr[i]
  }
  varAge = (float)sum/len;

  return varAge;
}

int main()
{
  int arr[20] = {0};
  int i = 0;
  int max = 0;
  int min = 0;
  float aver = 0.0;

  printf("请输入20个整数:");

  for (i = 0; i < sizeof(arr)/ sizeof(arr[0]); i++)
  {
    scanf("%d",&arr[i]);
  }

  max = maxValue(arr);
  min = minValue(arr);
  aver = average(arr);

  printf("max=%d\n", max);
  printf("min=%d\n", min);
  printf("aver=%f\n", aver);

  return 0;

}