📜  C |运营商|问题27

📅  最后修改于: 2021-05-29 12:10:23             🧑  作者: Mango

#include 
int main()
{
   int a = 0;
   int b;
   a = (a == (a == 1));
   printf("%d", a);
   return 0;
}

(A) 0
(B) 1
(C)大负数
(D) -1答案: (B)
说明:我们需要找出“(a ==(a == 1))”的值
(a == 1)将a初始化为0,则返回false。因此,在外括号中,将false与a进行比较。由于a为0,因此外括号的结果为true。
需要注意的重要一点是,在C语言中,当将布尔值比较或分配给整数值时,将false视为0,将true视为1。
这个问题的测验

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。