关于c语言选择结构程序设计
答案是0,1求详解,谢谢啦 首先,=的优先级很低,所以先计算a!=b结果是1,所以m=1,之后b>c等于0,d=0,所以m&&n=0,于是d=0 我有疑问:不是有句话是:对于逻辑与运算,如果第一个操作数被判定为“假”,系统不再判定或求解第二个操作数(因为与运算是有一个条件为假,则整个逻辑表达式的值就为假) fireofsun 发表于 2014-10-27 16:11
首先,=的优先级很低,所以先计算a!=b结果是1,所以m=1,之后b>c等于0,d=0,所以m&&n=0,于是d=0
我有疑问:不是有句话是:对于逻辑与运算,如果第一个操作数被判定为“假”,系统不再判定或求解第二个操作数(因为与运算是有一个条件为假,则整个逻辑表达式的值就为假) 对于C语言是这样的,有短路效应,因此(m=a!=b)&&(n=b>c)可看成是(m=(a!=b))&&(n=(b>c))
&&前面a!=b为真,在C里面就是1,因此m=1,而m=1返回值为1,因此(m=(a!=b))整个为真,所以(n=(b>c))这部分还是会计算 fireofsun 发表于 2014-10-28 08:45
对于C语言是这样的,有短路效应,因此(m=a!=b)&&(n=b>c)可看成是(m=(a!=b))&&(n=(b>c))
&&前面a!=b为真 ...
懂了,灰常感谢! fireofsun 发表于 2014-10-28 08:45
对于C语言是这样的,有短路效应,因此(m=a!=b)&&(n=b>c)可看成是(m=(a!=b))&&(n=(b>c))
&&前面a!=b为真 ...
明白了,灰常感谢! 楼主不错哦代码用手写!
你敲上去看看结果然后分分析最好;
其实C语言二级考试很操蛋,操蛋的题目 是啊,考了两次都没过
页:
[1]