【发布时间】:2012-03-16 17:35:02
【问题描述】:
请解释为什么以下代码的行为不同。
#include<stdio.h>
int main(){
float a=0.1;
if(a<0.1)
printf("less");
else
printf("greater than equal");
getchar();
}
Output:greater than equal
#include<stdio.h>
int main(){
float a=0.7;
if(a<0.7)
printf("less");
else
printf("greater than equal");
getchar();
}
Output:less与我的预期相反。
PS:这不是家庭作业。
【问题讨论】:
-
下次搜索这个网站。这已经被问了 1000 次了。
-
请解释为什么投反对票?
-
您未能搜索此站点,这就是原因。
-
@Parminder 看看this question
标签: c floating-point