有没有办法让我的函数返回最多15位小数?
long double vzdalenost(long double a1,long double b1,long double a2,long double b2){
long double vzdal;
vzdal = ((b1-a1)*(b1-a1)+(b2-a2)*(b2-a2));
return((long double) vzdal);
}
正如你所看到的,我非常绝望,所以我把所有的双打都变成了长双打,但是返回值仍然只有6位小数,即使它应该有更多。
答案 0 :(得分:5)
默认情况下,printf
显示6个有效小数,显示15使用.
精度说明符:
printf("%.15f\n", 1.0 / 3.0);
(或者看起来您使用long double
值:printf("%.15Lf\n", 1.0L / 3.0L);
)。