double不是输出6位小数的吗 为什么我的这段代码能输出9位小数
#include<stdio.h>
int main(){
double a=12.123456789;
printf("%12.9f",a);}
double类型默认显示6位。但是你输出的时候指定了输出位数啊....就是那个" . "后面的,是9,所以输出9位。这一位是用来指定显示的最小位数,在不指定的情况下,整数默认1位,浮点数默认6位
因为你printf()里的12.9指定了输出位, .9表示输出小数点后9位数,不够补0;
double类型默认显示6位。.9设置了输出位数为9.
double只是默0位认输出6位小数,而你的printf中很明显设置了输出位数为9