c语言 ,基础题..

来源:百度知道 编辑:UC知道 时间:2024/05/14 03:07:54
设有:
int a=1,b=2,c=3,d=4,m=2,n=2;
执行
(m=a>b)&&(n=c>d)后的n值是?

1?
2?
3?
4?
为什么?

谢谢.

a>b 是false ,false是0所以 m=0,此时表达式的值就是m的值,所以 && 左边为0即 false ,而 && 是与运算,左边为 false 就不会执行右边,所以 n 的值不变,还是 2。

n还是2

在(m=a>b)&&(n=c>d)中

a>b 是假 m=0 &&左边的条件就是 假

&&左边的条件 为假 就不执行 &&右边的 语句了

比如 || 左边的条件 为真的话 也不执行 || 右边的语句