#include <stdio.h>
#include <stdarg.h>
#include <math.h>
double sum(double n, ...)
{
double sum = 0;
va_list va;
va_start(va, n);
for (; !isnan(n); n = va_arg(va, double))
sum += n;
va_end(va);
return sum;
}
int main (void)
{
printf("%g\n", sum(3.14, 2.3, 1.7, 6.8, 4.2, NAN));
printf("%g\n", sum(0.1, 0.2, 0.5, 0.0313, 0.09, 0.7, NAN));
return 0;
}
/*
run:
18.14
1.6213
*/