为什么double a=3.1415926,printf(“%08.21f##\n”,a),结果是3.141592600000000070000000000000000000000## ?小数点后不是该输出21位吗
printf(“%.21f##\n”,a)这样试试
double a=3.1415926;有效是7位可以用 printf("%.21f##\n",a);输出是:3.141592600000000068405##
输出是小数点21位