第1个回答 2013-06-26
7位有效数字(其实是占位符号)里面包括后面的两位小数和小数点。
如果超出7位,则按实际的输出。例子如下:
#include <stdio.h>
void main()
{
double a=120005566.5468,b=479.1235;
printf("%7.2lf,%7.2lf\n",a,b);
printf("%.2lf,%.2lf\n",a,b);
getchar();
}
输出:
120005566.55, 479.12
120005566.55,479.12
第2个回答 2013-06-26
输出的a,数值有7位包括2个小数点。如" 5.00",注意前面的有空格一定要占够7位 答案补充 479.1235,保留小数点2位是479.12,位数不够前面加空格;而120005566.66小数点前就超出了7位,所以小数点前不变,小数点后保留2位小数;
%.2lf是说对整个位数不要求就是不用要在前面加空格了,只要求保留小数点2位,对比一下两行两数之间的空格一定不一样。