作业帮 > 数学 > 作业

已知a,b,c的值均为0,逻辑表达式(a+=1)&&(b+=1)||(c+=2)的值是什么,运算后a,b,c的值又是多少

来源:学生作业帮 编辑:百度作业网作业帮 分类:数学作业 时间:2024/07/01 10:48:20
已知a,b,c的值均为0,逻辑表达式(a+=1)&&(b+=1)||(c+=2)的值是什么,运算后a,b,c的值又是多少?
答案是:真,a=1,b=1,c=0;
值是真我懂,但为什么c=0而不是c=2呢?
已知a,b,c的值均为0,逻辑表达式(a+=1)&&(b+=1)||(c+=2)的值是什么,运算后a,b,c的值又是多少
这是由于逻辑运算的“短路”所引起的.
(a+=1)&&(b+=1)||(c+=2),当(a+=1)&&(b+=1)计算结束时,因不管后面结果如何,表达式值已经确定(均为真),此时C语言会结束本表达式的求值,继续后续语句执行.所以c+=2没执行,c依然为0