Ho scritto un semplice esempio che si spiega da solo ...

codice:
#include <iostream>
#include <stdarg.h>

using namespace std;

float media( int n, ... )
{
  va_list pp;
  float med = 0.0f;
  float sum = 0.0f;

  if(n)
  {
    va_start(pp, n);	
		
    for (int ix = 0; ix < n; ix++)
	sum += va_arg(pp, float);
		
    va_end(pp); 

    med = sum/n;
  }

  return(med);
}

void main()
{
  cout << "Media: " << media(3, 1.0f, 2.0f, 3.0f) << endl;

  cout << "Media: " << media(5, 1.0f, 2.0f, 3.0f, 4.0f, 5.0f) << endl;

  cout << "Media: " << media(2, 10.0f, 20.0f) << endl;
}
ma ce ne sono tanti su Internet ...