请问这几个语句,表达是什么意思.?
1...temp=(b> a)*b-(b> c)*b;
2...(a <b)&&(temp=a,a=b,b=temp);
3...(a <b)&&(temp=a,a=b,b=temp);
4...temp=((a> 0)&&(temp> 0))*temp+((a> 0)&&(temp <0))*temp*(-1)+((a <0)&&(temp <0))*temp+((a <0)&&(temp> 0))*temp*(-1);
第四的((a> 0)&&(temp> 0))*temp是什么意思怎么理解呢./?
谢谢..
[解决办法]
1...temp=(b> a)*b-(b> c)*b;
‘> ’是关系运算符号,如果b大于a则b> a等于1否则等于0
2...(a <b)&&(temp=a,a=b,b=temp);
'&& '是逻辑运算符,如果a <b为假则不计算后面的(temp=a,a=b,b=temp),否则计算后面的(temp=a,a=b,b=temp),这个式子的返回值是b
3...(a <b)&&(temp=a,a=b,b=temp);
4...temp=((a> 0)&&(temp> 0))*temp+((a> 0)&&(temp <0))*temp*(-1)+((a <0)&&(temp <0))*temp+((a <0)&&(temp> 0))*temp*(-1);
((a> 0)&&(temp> 0))*temp的意思是:先让a和0做比较,如果a小于等于0,(a> 0)得到的结果是0,由于是&&运算所以不用计算(temp> 0),直接计算(a> 0)*temp得到结果为0。如果a大于0, (a> 0)得到的结果是1,要执行后面的(temp> 0),如果temp> 0,(temp> 0)得到的结果是1,即变成 (1&&1)*temp结果就为temp。如果temp <=0,(temp> 0)得到的结果是0,即(1&&0)*temp结果为0