C语言中格式化输出,四舍五入类型问题
#include <stdio.h>
int main()
{
double a,b,c,x;
printf("请输入三个数字:\n");
scanf("%lf,%lf,%lf",&a,&b,&c);
x=(a+b+c)/3;
printf("平均值x为double时,x=%.1lf\n",x);
float y=(a+b+c)/3;
printf("平均值y为float时,y=%.1f\n",y);
return 0;
}
请输入三个数字: 5.35,1,1 平均值x为double时,x=2.4 平均值y为float时,y=2.5
为什么x为double时,不会四舍五入呢?