#include <stdio.h>
#include <stdarg.h>
enum { VA_END = -1 };
int average_of_N_numbers(int first, ...) {
va_list args;
va_start(args, first);
unsigned int count = 0;
int sum = 0;
int next_number = first;
while (next_number != VA_END) {
sum += next_number;
count++;
next_number = va_arg(args, int);
}
va_end(args);
return count ? (sum / count) : 0;
}
int main() {
int avg = average_of_N_numbers(1, 5, 7, 9, 3, 2, 8, VA_END);
printf("%d", avg);
return 0;
}
/*
run:
5
*/