长双精度类型变量输出

长精度类型变量值输出
书上的结果是46.257000,而我是-0.000000
#include
int main()
{
    long double fLongDouble;
    fLongDouble=46.257;
    printf("%f\n",fLongDouble);
    return 0;
}

img

输出格式错了,long double 是%Lf

#include<stdio.h>
int main()
{
    long double fLongDouble;
    fLongDouble=46.257;
    printf("%Lf\n",fLongDouble);
    return 0;
}
 

如图,将%f改为%Lf,再控制位数,使用%.6Lf即可。


#include<stdio.h>
int main() {
    long double fLongDouble;
    fLongDouble = 46.257;
    printf("%.6Lf\n", fLongDouble);
    return 0;
}