如果 $N$ 是 C++ 的整型变量,值为 5,则表达式 (N + !N) 的值为 4。( )
答案B。根据计算机/编程基础知识分析判断。
仔细审题,注意"不正确""不属于""不是"等否定词。用排除法缩小范围。
【考点】C++运算符优先级|逻辑非运算|整型表达式求值 (GESP一级:C++语法与基础运算,卡住的是把逻辑非当成位运算的初学者)
解题思维 看到!N先别急着代入数字。C++里!对整型是逻辑非:非0变0,0变1。!5等于0,所以5 + 0是5。
陷阱拆解
!当成位取反(~)而非逻辑非!比+高,括号虽有用但这里没括号,!N先算!和~:~5才是-6(位补码),!5是0反命题思维 若想让结果是4,表达式得是N + !1或!N + 1。刷到这类题先问:!到底对int还是对bool生效?