我来了!这是参数不固定的(如printf..),如下:
int average( int first, ... )
{
   int count = 0, sum = 0, i = first;
   va_list er;   va_start( er, first );
   while( i != -1 )
   {
      sum += i;
      count++;
      i = va_arg( er, int);
   }
   va_end( er );
   return( sum ? (sum / count) : 0 );
}average(1, 2, 3, 4);
average(1, 2, 3, 4, 5, 6, 7, 8);