学习c primer plus 复现书上代码时生成不对
遇到的现象和发生背景,请写出第一个错误信息
第二行0x1f4000000
这里面0太多了。书上就没有这么多零。
运行结果;
32000.000000 can be written 3.200000e+04
And it's 0x1.f400000000000p+14 in hexadecimal ,powers of 2 notation
2140000000.000000 can be written 2.140000e+09
0.000053 can be written 5.320000e-05
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我感觉可能是编译器的问题,但是都编译出来了。
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”
#include<stdio.h>
int main(void) {
float a=32000.0;
double abet = 2.14e9;
long double dip = 5.32e-5;
printf("%f can be written %e \n", a, a);
//下一行要求编译器支持c99或其中的相关特性
printf("And it's %a in hexadecimal ,powers of 2 notation\n", a);
printf("%f can be written %e \n", abet, abet);
printf("%Lf can be written %Le \n ", dip, dip);
return 0;
}