#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=0,b=0;
float avg=0.0;
scanf("%d %d\n",&a,&b);
avg=(a+b)/2.0;
printf("%lf\n",avg);
system("pause");
return 0;
}
不使用(a+b)/2这种方式,求两个数的平均值
方法一:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=0,b=0;
float avg=0.0;
scanf("%d %d\n",&a,&b);
avg=(a+b)>>1;
printf("%lf\n",avg);
system("pause");
return 0;
}
方法二:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=0,b=0;
float avg=0.0;
scanf("%d %d\n",&a,&b);
avg=a-(a-b)/2.0;
printf("%lf\n",avg);
system("pause");
return 0;
}
方法四:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
double avg(double a,double b)
{
return (a+b)/2;
}
int main ()
{
double a=20;
double b=31;
printf("%lf\n",(a+b)/2);
system("pause");
return 0;
}
实现上课可变参数函数:average
#include<stdlib.h>
#include<stdarg.h>
#include<string.h>
#include<stdio.h>
float average (int n,...)
{
va_list var_arg;
int count;
float sum=0;
va_start(var_arg,n);
for(count=0;count<n;count++)
{
sum+=va_arg(var_arg,int);
}
va_end(var_arg);
return sum/n;
}
int main()
{
float ret=average(12,23,3,45,67,12,45,9,67,34,23,25,37);
printf("average(n)=%2f\n",ret);
system("pause");
return 0;
}