嵌入式技术
关系运算符是一个高频考点,往往题目难度不大,但是正确并不是特别高,最主要的原因在于不理解关系运算的优先级和结合性。
关系运算符只有这么几种:
>、< 、 >=、<=、==、!=
他的比较结果更简单,只有两种结果:
0
1
参考答案
C
0
1
A
考点解析
第一题
关系运算符的优先级,没有算术运算符高,但是比赋值运算符高。
第二题
虽然没有给变量a初始化赋值,但是不影响结果
printf("%d", a + 10 < 20 != 0 == 0 <= a - 10);
在这个表达式中,首先计算a+20,虽然不知道是多少,但是并不影响变量a的值,一直没变。
第三题
printf("%d", fabs(1.0/3*3 - 1) <= 1.0E-6);
1.0/3*3 - 1=1.0
fabs(1.0/3*3 - 1)=0
fabs(1.0/3*3 - 1) <= 1.0E-6为1
第四题
a+=b 2>c+5?b+=2:c =2;
等价于
a+=((b 2)>(c+5)?(b+=2):(c =2));
赋值运算符的优先级最低,最后计算
关系运算符的测试程序
#include < stdio.h >
#include < math.h >
int main(){
int a=1,b=2,c=3; a+=b*2 >c+5?b+=2:c*=2;
printf("%dn", a);
printf("%dn", b);
printf("%dn", c);
return 0;
}
全部0条评论
快来发表一下你的评论吧 !