#include<stdarg.h>
#include <stdio.h>
float average(int n_values, ...);
int main(void) {
float aver = average(5,1,2,3,4,5);
printf("aer:%.2f\n", aver);
return 0;
}
float average(int n_values, ...) {
//定义一个va_list类型的变量用于访问可变参数列表
va_list var_arg;
int count;
float sum = 0;
// 初始化可变参数列表
va_start(var_arg, n_values);
// 通过循环获取可变参数列表中的参数
for(count =0; count < n_values; count++) {
// int为可变参数类型
sum+=va_arg(var_arg,int);
}
//关闭初始化列表
va_end(var_arg);
return sum / n_values;
}
网友评论