关于C的一小问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 04:31:44
刚学C语言不久
自学的
呵呵有个小问题请教下
关于printf函数的,
先定义了一实数
float f=123.456;
printf("%10f\n",f);
为什么输出的还是123.456001
不是指定了输出十位吗,小弟实在想不明白
能不能指教下...

是%m.nf形式的

其中m是总域宽(数字总长度)
n是小数位数 如果n不写则为默认 写多了会由于精度问题可能显示错误的数据
当总长度大于m时,则以当前数字长度为准显示

仿佛这个浮点数前边的整数限制没有意义(如果是.10的话会在小数点后输出10位)。个人愚见。

包括小数点是十位

输出的是十位啊,不知道你想要的是不是输出小数点后面的十位,应该写成printf("%.10f",f);

float类型的数字 就只有6位小数的 这是有%f格式决定的 超过6的 就只有6位小数