一道有关c语言的题有以下定义语句:double a,b;int w;long c;w=a==b这个表达式为什么是错误的呢?
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/20 02:41:06
xSn@~+PR>1E2J$)N&D! )M]]ۧBg9ԓ'I͠5u^s38;D& ELR9MRԽEium ?;&锺wdlQ9Aw {g)#4}JD|$,\ShX> .V@n> d
!@9Bd2}2q}7އ;w w=6@MWfNßV56io M&(c.۴%Dt^#^{VB
BۯIYNDC+tԮK+u|}{;?YztNťfvi~\)1Jzc7=1eMF1$UN=*jKaglI*B$
yl&cVʗ
l~X}/r1
khŒKJ>[%
(o;-uP+&.jGB^ѓ7
q'U
一道有关c语言的题有以下定义语句:double a,b;int w;long c;w=a==b这个表达式为什么是错误的呢?
一道有关c语言的题
有以下定义语句:
double a,b;
int w;
long c;
w=a==b这个表达式为什么是错误的呢?
一道有关c语言的题有以下定义语句:double a,b;int w;long c;w=a==b这个表达式为什么是错误的呢?
首先在语法上是没错误的.但是在正常的使用中,会认为是错的.
浮点数本来就是一个不精确的数值,比较相等最好是做差与一个满意的小数值比较来确定是否近似相等.
== 操作将返回一个布尔值,它的值只有两种状态,0或非0.
有意思的操作
#include
#include
int run();
int run()
{
int a,b,e,f;
char c,d;
c=1;
d=1;
e=1024;
f=1024;
a= c==d;
b = e==f;
if(a==b)
{
puts("相同的布尔");
}
else
puts("不同的布尔");
return 0;
}
int main(){
run();
}
这段代码就可能会出问题.