Code:
#include <stdio.h>
void sums(double Input[], int elements, double *PSum, double *NSum, int *numOfP, int *numOfN);
int main()
{
double Input[10];
double PSum = 0, NSum = 0, userInput; //positive and negative sum
int numOfP = 0, numOfN = 0; //number of postive and negatives
int i;
for(i = 0; i < 10; i++){
printf("Enter a real number or '0' to stop: ");
scanf( " %lf", &userInput);
if(userInput == 0){
break;
}
Input[i] = userInput;
}
sums(Input, i, &PSum, &NSum, &numOfP, &numOfN);
printf("Sum of positives: %.2f\nNumber of positives: %d\n", PSum, numOfP);
printf("Sum of negatives: %.2f\nNumber of negatives: %d\n", NSum, numOfN);
printf("Average of positives: %.2f\n", PSum / numOfP);
printf("Average of negatives: %.2f\n", NSum / numOfN);
return 0;
}
void sums(double Input[], int elements, double *PSum, double *NSum, int *numOfP, int *numOfN)
{
int i;
for(i = 0; i < elements; i++){
if(Input[i] > 0){
*numOfP += 1;
*PSum += Input[i];
}
else{
*numOfN += 1;
*NSum += Input[i];
}
}
}