Code:
#include <stdio.h>

float average(int values [], int array_size);


int sum = 0;
int i = 0;

int main (void)

{
	
	float f;
	
	
	

	int integers[5] = {0};

	printf("Enter five numbers\n");

	while (scanf("%d", &integers[i])!=EOF)
	{
		i++;
		sum += integers[i];
		
		if (i == 5)
			break;
	}


	f = average(integers, i);

	printf("The average of the numbers you entered is %.2f\n",f);

	return (int) f;
}

float average(int values [], int array_size)

{
	return (float) sum/array_size;

}
Why is the average always coming out to be some crazy number?