求教各位,float到底可以输出几位有效数字?

#include<stdio.h> main() { float a=123.234222222; printf("%f\n",a); }为什么输出的是123.234222,不是只能显示7位有效数字吗?谢谢各位了
#include<stdio.h> main() { float a=123.234222222; printf("%f\n",a); }为什么输出的是123.234222,不是只能显示7位有效数字吗?谢谢各位了