#include<stdio.h>
double getAvg(int* arr,int size);
double getAvg2(int* arr,int size);
int main() {
int balance[5] = {1000,2,3,14,50};
double avg;
avg = getAvg(balance,5);
printf("\n%f",avg);
getchar();
}
double getAvg(int* arr,int size){
int i,sum = 0;
double avg;
for(i=0;i<size;i++){
sum += arr[i];
printf("\narr 存放的地址=%p",&arr[i]);
}
avg = (double)sum / size;
return avg;
}
double getAvg2(int* arr,int size){
int i,sum = 0;
double avg;
for(i=0;i<size;i++){
sum += *arr;
printf("\narr 存放的地址=%p",arr);
arr++;
/*arr++是指针的自增,这里自增会改变arr 指向地址。
原因 : arr 将原本指向的arr数组元素 + 了四个字节,然后指向的是后一个数组元素。然后因为指针内容发生改变,所以arr 指向地址发生变化。*/
}
avg = (double)sum / size;
return avg;
}