若有int a=9,b=5;则表达式b=(a=4)/(b=a)的值是1还是0?为什么?

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 02:39:18

若有int a=9,b=5;则表达式b=(a=4)/(b=a)的值是1还是0?为什么?
若有int a=9,b=5;则表达式b=(a=4)/(b=a)的值是1还是0?为什么?

若有int a=9,b=5;则表达式b=(a=4)/(b=a)的值是1还是0?为什么?
答案是1,因为括号的运算优先级高,所以这个表达式先算的是两个括号里的值,又因为/号的运算级别由于=号赋值,且/除号的结合方向为自左至右,所以先算(a=4),再算(b=a=4),再算4/4=1,最后将1赋值给b,b=1.