[求助]float double的疑问
void main()
{
double b;
b=0.1234567891234567899e15;
printf("b=%f\n",b);
}
输出结果是:b=123456789123456.797000
这个输出结果以%f(只能保留7位有效数字 )输出的,但结果保留了16位有效数字,这怎么回事啊?
void main()
{
double b;
b=0.1234567891234567899e15;
printf("b=%f\n",b);
}
输出结果是:b=123456789123456.797000
这个输出结果以%f(只能保留7位有效数字 )输出的,但结果保留了16位有效数字,这怎么回事啊?
void main()
{
double b;
b=0.1234567891234567899e15;
printf("b=%f\n",b);
}
输出结果是:b=123456789123456.797000
这个输出结果以%f(只能保留7位有效数字 )输出的,但结果保留了16位有效数字,这怎么回事啊?
如果你想要保留7位也是可以的,但是这里你并没有作输出 控制,也许你看书上说是7 位,但它的意思是系统默认输出的小数位数