【问题描述】编写函数double average(double score[ ], int n,int *m)对存放在实型数组中考试成绩进行求平均分和低于平均分的人数,要求在主函数里面进行班级人数和成绩的输入,调用average函数进行计算成绩平均值和低于平均分的人数后,返回主函数输出班级成绩的平均值和低于平均分的人数。
【输入形式】测试数据第一个数n(1≤n≤100)表示该组班级的人数,后跟n个实数,数据之间由空格分隔。
【输出形式】输出结果为班级成绩的平均分和低于平均分的人数,中间用空格分隔,平均分小数位保留两位。
【样例输入】
9 88.5 76.2 67.1 51.4 42.8 93.4 85.6 64.8 60.5
【样例输出】
70.03 5
#include<stdio.h>
double average(double s[],int n,int *pcount)
{
double average;
double sum=0;
int i;
for(i=0;i<n;i++)
{
sum+=s[i];
}
average=sum*1.0/n;
for(i=0;i<n;i++)
{
if(average>s[i])
{
(*pcount)++;//一定要加()
}
}
return average;
//有两个返回值,一个通过函数返回,一个通过指针
}
int main()
{
int n;
scanf("%d",&n);
int i;
double s[100];
for(i=0;i<n;i++)
{
scanf("%lf",s+i);//=&s[i]
}
int count=0 ;
average(s,n,&count);
printf("%.2lf %d\n", average(s,n,&count),count);
return 0;
}