read integers that returns a negative or prints the average

Im trying to finish this homework assignment by tommarow afternoon and I keep getting stuck.
Write a Function that reads integers from the keyboard. If any are negative, it returns a negative. If all are positive, it returns an average of the numbers.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <stdio.h>
#include <stdbool.h>

/*	Prototype Declarations */
bool anyPositiveEOF (void);
float readAverage (void);
int main (void)
{
    
/*	Statements */
	if (anyPositiveEOF())
       printf("\nAll numbers are positive\n");
       if (readAverage())
       printf("\nAverage: %f\n", readAverage());
       
       
	else
	   printf("\nAll numbers negative\n");
	   getch();
	return 0;
}	/* main */


bool anyPositiveEOF (void)
{
//	Local Declarations 
	bool anyPositive = false;
	int  numIn;

//	Statements 
	printf("Determine if any number are positive\n");
	printf("Please enter any integers: \n");
	while (scanf("%d", &numIn) != EOF)
	   {
	    anyPositive = numIn > 0;
	    if (anyPositive)
	       continue;
	        printf("next number: \n");

	   } // while 
	return false;
}
float readAverage (void)
{
//	Local Declarations
	bool breakFlag = true;
	int  x = 0;
	int  y = 0;
	int  z = 0;
	
	int   count = 0;
	int   n;
	float sum = 0;
	
    
	while(scanf("%d",&n) != EOF)
	    {
	    if (n != 0)
	       {
	        sum += n;
	        count++;
	       } // if 
	      } // while 
	return (sum / count);
}
I would recommend editing the code between lines 11-19, fixing the indentation and putting in braces to explicitly delimit the blocks.
the indention only messed up when posting my source code and i dont see any need for the braces
Topic archived. No new replies allowed.