函数传址时出现的问题,求指教
#include <stdio.h>//函数实现功能为统计8个学生的平均分,并返回少于平均分的学生的个数
int fun(float *p,int n,float *ptr_aver)
{
int i,j,count=0;
float sum=0,k=0;
for(i=0;i<n;i++)
{
sum+=*p;
p++;
}
k=sum/n;
*ptr_aver=k;
for(j=0;j<n;j++)
{
if((*p)<(*ptr_aver))
{
count++;
p--;
}
}
return count;
}
void main()
{
float arr[]={89,87,88,90,85,72,84,79};
int len=sizeof(arr)/sizeof(float);
float i=10;
float *p=&i;
printf("%d\n%f",fun(arr,len,*p);
}
输出的平均值不是目标值