问题 单项选择题

C语言中下列运算符的优先级按由低到高的次序,正确的是()

A.①! ②+ ③< ④& ⑤&&

B.①&& ②+ ③< ④& ⑤!

C.①! ②&& ③& ④< ⑤+

D.①&& ②& ③< ④+ ⑤!

答案

参考答案:D

解析:

在C语言中,对各种运算符的优先级是有规定的,必须掌握。优先级最高者其实并不是真正意义上的运算符,包括:数组下标、函数调用操作符各结构成员选择操作符。它们都是自左向右结合。 单目运算符的优先级仅次于上述运算符,在所有的真正意义的运算符中,它们的优先级最高。 双目运算符的优先级低于单目运算符的优先级。在双目运算符中,算术运算符的优先级最高,移位运算符次之,关系运算符再次之,接着就是逻辑运算符,赋值运算符,最后是条件运算符。 在C语言中,任何一个逻辑运算符的优先级低于任何一个关系运算符,移位运算符的优先级比算术运算符要低,但是比关系运算符要高。 下表是C语言运算符优先级表(由上至下,优先级依次递减)。

选择题
单项选择题