-3

我很难打印浮点变量。它给了我额外的数字,那不应该在那里。这是示例:

float number;
char temp[50];

fgets ( temp, sizeof temp, fr );  //reading string from file, example: 99.10   
number=atof(temp);

printf("%lf",number);             //console output: 99.101563

这显然是错误的输出。有什么建议么?

4

1 回答 1

1

这个输出没有什么意外的。99.10不能在 IEEE754 中准确表示。如果这是您想要的,请更改格式以将输出限制为两位小数:

printf("%.2f", number);
于 2015-04-12T22:20:10.117 回答