使用变长的参数列
使用变长的参数列
文章目录
/*程序名:fig14_02.c*/
/*
使用变长的参数列
*/
#include <stdio.h> //标准输入输出头文件
#include <stdarg.h>
/*计算平均值*/
double average(int i,...)
{
double total = 0;
va_list ap;//保存va_list和vz_end所需的信息
va_start(ap,i);//初始化va_list对象
/*处理变长的参数列*/
for (int j = 1;j <= i;j++)
{
total += va_arg(ap,double);
}
va_end(ap);//清空变长的参数列
return total/ i;
}
/*程序开始*/
int main(void)
{
double w = 37.5;
double x = 22.5;
double y = 1.7;
double z = 10.2;
printf("%s%.1f\n%s%.1f\n%s%.1f\n%s%.1f\n",
"w = ",w,"x = ",x,"y = ",y,"z = ",z);
printf("%s%.3f\n%s%.3f\n%s%.3f\n",
"w,x的平均值=",average(2,w,x),
"w,x,y的平均值=",average(3,w,x,y),
"w,x,y,z的平均值=",average(4,w,x,y,z));
return 0;//程序结束
}//main函数结束
标签:va,int,list,参数,变长,使用,include
From: https://blog.csdn.net/zhyjhacker/article/details/141871613