/*计算数组元素中值为正数的平均值(不包括0)。
例如:数组中元素的值依次为39,-47,21,2,-8,15,0,
则程序的运行结果为19.250000*/
#include <stdio.h>
double fun(int s[])
{
double sum = 0.0;
int c = 0, i = 0;
while (s[i])//非0时执行循环
{
if (s[i] > 0)
{
sum += s[i];
c++;
}
i++;
}
sum /= c;
return sum;
}
int main()
{
int x[1000]; int i = 0;
do
{
scanf_s("%d", &x[i]);
} while (x[i++] != 0);
printf("%f\n", fun(x));
return 0;
}
运行结果