printf为C%f,小数点后为6 0

时间:2012-11-15 23:44:35

标签: c formatting printf

int main ()
{
float MarysAge;

MarysAge = (int) 19.32;
printf("Mary is %f years old\n", MarysAge);

return 0;
}

为什么这个输出结尾有6 0?试图帮助一个朋友但是,我不知道C,任何帮助都很赞赏=)。

输出=玛丽是19.000000岁

2 个答案:

答案 0 :(得分:4)

我误解了你的问题。

可以按如下方式控制位数......

printf("Mary is %.2f years old\n", MarysAge);

答案 1 :(得分:2)

%f的默认精度为6,输出6位数后的数字。 并且(int)圆了下来。 首先19.32成为19(int), 然后在%f上成为19.000000。