- //
- // main.c
- // HomeWork_04
- //
- // Created by 蒋伟 on 16/5/14.
- // Copyright (c) 2016年 蒋伟. All rights reserved.
- //
- #include <stdio.h>
- #include <limits.h>
- /**
- * 取得最大值最小值和平均值
- *
- * @param arr 数组
- * @param length 数组长度
- * @param pMax 最大值的指针
- * @param pMin 最小值的指针
- * @param pSum 和的指针
- * @param pAvg 平均数的指针
- */
- void getAll(int *arr, int length, int *pMax, int *pMin, int *pSum, double *pAvg);
- /**
- * 打印数组
- *
- * @param arr 数组
- * @param length 数组长度
- */
- void printfArr(int *arr, int length);
- int main(int argc, const char * argv[]) {
- int arr[] = {432,432,432,432,43,5,4376,58,36,3245,62,66,3,7};
- int length = sizeof(arr) / sizeof(int);
- int max, min, sum;
- double avg;
- getAll(arr, length, &max, &min, &sum, &avg);
- printfArr(arr, length);
- printf("max = %d , min = %d , sum = %d , avg = %.2lf\n",max, min, sum, avg);
- return 0;
- }
- /**
- * 取得最大值最小值和平均值
- *
- * @param arr 数组
- * @param length 数组长度
- * @param pMax 最大值的指针
- * @param pMin 最小值的指针
- * @param pSum 和的指针
- * @param pAvg 平均数的指针
- */
- void getAll(int *arr, int length, int *pMax, int *pMin, int *pSum, double *pAvg){
- int min = INT32_MAX;
- int max = INT32_MIN;
- int sum = 0;
- double avg = 0;
- for(int i = 0; i < length; i++){
- sum += arr[i];
- if(arr[i] > max){
- max = arr[i];
- }
- if(arr[i] < min){
- min = arr[i];
- }
- }
- avg = (double)sum / length;
- *pMax = max;
- *pMin = min;
- *pSum = sum;
- *pAvg = avg;
- }
- /**
- * 打印数组
- *
- * @param arr 数组
- * @param length 数组长度
- */
- void printfArr(int *arr, int length){
- for(int i = 0; i < length; i++){
- printf("%d\t",arr[i]);
- }
- printf("\n");
- }
复制代码
|
|