printf输出时什么情况下四舍五⼊?
#include<stdio.h>
#include<math.h>
int main()
{
double a=5.60112034;
int b=1;
//  scanf("%lf",&a);
printf("%lf\n",a+b);
printf("%.0lf\n",a+b);//四舍五⼊出现
printf("%8.3lf\n",a+b);
return0;
}
输出printf用什么格式
程序结果:
6.601120
7
6.601
输出实数的时候会有四舍五⼊。不指定⼩数位数时按系统默认位数⾃动四舍五⼊;指定⼩数位数时按指定值四舍五⼊。
注意:
%f和%lf分别是float类型和double类型⽤于格式化输⼊输出时对应的格式符号。
其中:
float,,对应%f.
double,,对应%lf.
在⽤于输出时:
float类型可以使⽤%lf格式,但不会有任何好处。
double类型如果使⽤了%f格式可能会导致输出错误。
在⽤于输⼊时:
double 类型使⽤了%f格式,会导致输⼊值错误。
float类型使⽤double类型不仅会导致输⼊错误,还可能引起程序崩溃。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。