#include <stdio.h>
#include <stdlib.h>
int main()
{
float a=0.12345678901;
double b=0.12345678901;
printf("%f,%lf",a,b);
//在Dev-C++和VC6.0里面,a和b的值都是0.1234567,为啥%lf无效??%llf也无效
system("pause");
return 0;
}
如何输出双精度浮点数?%lf没用
答案:4 悬赏:50
解决时间 2021-04-22 20:17
- 提问者网友:醉人眸
- 2021-04-22 12:22
最佳答案
- 二级知识专家网友:风格单纯
- 2021-04-22 13:14
//double输出小数时默认也是6位,这样就看出区别了:
printf("%.16f,%.16lf",a,b);
printf("%.16f,%.16lf",a,b);
全部回答
- 1楼网友:晚安听书人
- 2021-04-22 17:41
双精度可以用%f格式输出但它的有效位数一般为16位,给出小数6位。超出无意义
- 2楼网友:星星坠落
- 2021-04-22 16:02
不会吧!怎么我每次的运行结果都是一样的?%lf确实是双精度。
- 3楼网友:走,耍流氓去
- 2021-04-22 14:45
因为输出的数只保留了小数点后6位!
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯