如果两个double型的数值运算,怎么让计算机自动处理小数位数
本帖最后由 风之残月 于 2014-11-10 10:12 编辑如3.3+6.1=9.4而不是9.400000,怎么弄啊 本帖最后由 メ㊣逆ご帅☆ 于 2014-7-29 19:37 编辑
9.4=9.400000。即使后面添加一万个0也是一样的
只是显示问题而已,当然你可以选择不显示
比如printf函数
可以以%g输出便是你要的结果
%g选用%f或%e格式中输出宽度较短的一种格式,不输出无意义的0双精度实数
双精度实数,刚好符合你的要求自动处理小数位。不用手动精确
例子
#include <stdio.h>
int main()
{
double a,b;
a=3.3;
b=6.1;
printf("相加结果:%g\n",a+b);
return 0;
}
%-2f 用%.2lf,小数点后用来确定他的精确位数 メ㊣逆ご帅☆ 发表于 2014-7-29 19:01
9.4=9.400000。即使后面添加一万个0也是一样的
只是显示问题而已,当然你可以选择不显示
比如printf函数
...
谢啦 4楼正解 C语言入门 发表于 2014-7-29 20:05
谢啦
记得采纳。
页:
[1]