c语言程序设计:编程输出下面各逻辑表达式的值,并分析结果。设a=3,b=4,c=5。 ① a+b>c && b= =c ② a||b+c && b-c ③ !(a>b)&& !c ||1 ④ !(x=a) && (y=b)&& 0 ⑤ !(a+b)+c-1 && b+c/2
时间: 2023-12-24 10:03:43 浏览: 252
① a+b>c && b= =c
输出结果为0。原因是因为逻辑运算符"&&"是逻辑与运算符,当两个表达式都为真时返回真,否则返回假。在这个表达式中,a+b>c为真,但是b=c为假,所以整个表达式为假。
② a||b+c && b-c
输出结果为1。原因是因为逻辑运算符"||"是逻辑或运算符,当两个表达式中有一个为真时返回真,否则返回假。在这个表达式中,a为真,因为a不等于0,所以整个表达式为真。
③ !(a>b)&& !c ||1
输出结果为1。原因是因为逻辑运算符"!"是逻辑非运算符,表示取反。在这个表达式中,!(a>b)为真,因为a不小于b,所以整个表达式为真。
④ !(x=a) && (y=b)&& 0
输出结果为0。原因是因为"="是赋值运算符,不是等于运算符,所以在执行x=a时,x被赋值为a的值3,整个表达式的值为0。因为在C语言中,任何非0值都被认为是真,所以!(x=a)为假,整个表达式为假。
⑤ !(a+b)+c-1 && b+c/2
输出结果为1。原因是因为在C语言中,"&&"运算符的优先级高于"+"和"-"运算符,所以先计算!(a+b)的值,即为0。然后计算c-1的值,为4。最后计算b+c/2的值,为6。因为0+4不等于0,所以整个表达式为真。
阅读全文