1.使用可变参数列表实现任意个数求平均值。

#include<stdio.h>
#include<stdarg.h>
float average(int val,...)
{
	int i=0;
	float sum=0.0;
	float ave=0.0;
	va_list arg;
	va_start(arg,val);
	for(i=0;i<val;i++)
	{
		sum+=va_arg(arg,int);
	}
	va_end(arg);
	ave=sum/val;
	return ave;
}
int main()
{
	float ret=0;
	ret=average(4,2,4,2,9);
	printf("%f\n",ret);
	return 0;
}

2.使用可变参数列表实现print("s\tc\n","bit-tech",'w');

#include<stdio.h>
#include<stdarg.h>
void print(char *format,...)
{
	char ch;
	char *pch;
	va_list arg;
	va_start(arg,format);
	while(*format)
	{
		switch(*format)
		{
		case 'c':
		{
			ch=va_arg(arg,char);
			putchar(ch);
			break;
		}
		case 's':
		{
			pch=va_arg(arg,char*);
			while(*pch)
			{
				putchar(*pch);
				pch++;
			}
			break;
		}
		default :
		{
			putchar(*format);
			break;
		}
		}
		format++;
	}
	va_end(arg);
}
int main()
{
	print("^^^^s  5362c   ****s\n","bhbv",'o',"piu");
	return 0;
}