You're only taking the average of one number, that's hardly surprising output :-) Try this instead, it may be more to your liking
Code:
#include <stdio.h>
#include <ctype.h>
int main(void)
{
int number; /* array of 10 numbers */
int count = 10; /* count through the amount of times entered */
long sum = 0L; /* The total amount of the numbers entered */
float average = 0.0f; /* average of the total / count */
int i = 0; /* count through the array */
char more = 'y'; /* variable to continue with the loop y||Y */
do
{
for(i = 0; i < count && tolower(more) != 'n'; i++)
{
printf("\n Enter a number:\n");
scanf("%d", &number); /* read input */
sum += number;
printf("Would you like to try another value? (N/Y)?: \n");
scanf(" %c", &more); /* look for value to be yes or no */
}
average = (float)sum / i;
printf(" The average of these numbers is %.2f\n", average);
printf("Would you like to try another sequence? (N/Y)?: \n");
scanf(" %c", &more); /* look for value to be yes or no */
}while(tolower(more) == 'y');
return 0;
}