c语言 任意输入3个数据,输出它们的平均值和最小的一个数。
#include <stdio.h>
int main(void)
{
float a,b,c,min;
printf("Please input three numbers:");
scanf("%f%*c%f%*c%f",&a,&b,&c);
printf("The average is:%f\n",(a + b + c) / 3);
switch((a >= b) + (a == b))
{
case 0 :
case 2 :
if(a < c)
min = a;
else
min = c;
break;
case 1 :
if(b < c)
min = b;
else
min = c;
break;
default:
break;
}
printf("The minimun is:%f\n",min);
return 0;
}
PS:算法并不是最优的,只是这么写看上去厉害一点;真要说起来,级联式if else 才是最简单的。
#include "stdio.h"
int main(void){
double a,b,c;
printf("Please enter 3 data...\n");
scanf("%lf%lf%lf",&a,&b,&c);
if(a<=b && a<=c)
printf("The min is %f\n",a);
else if(b<=a && b<=c)
printf("The min is %f\n",b);
else
printf("The min is %f\n",c);
printf("The average is %f\n",(a+b+c)/3);
return 0;
}
2016-03-09
{
double n,m,a,b,c;
while (~scanf ("%lf%lf%lf",&a,&b,&c))
{
n = (a + b + c) * 1.0 / 3;
a > b ? (b > c ? m = c : m = b) : (a > c ? m = c : m = a);
printf ("%lf %lf\n",n,m);
}
return 0;
}
int d=(a+b+c)/3;