28题的A项不是语句非法,而是因为它不符合答案要求。
15题要找非法的语句,A项完全是合法的,而D项是非法语句。
x
'a'<=c<= 'z' 这个表达式是合法的。
但你看,如果机器是右结合的话,首先做c<= 'z' ,成立的为1
然后做'a'<=1,所以是不能判断的
'a'<=c<= 'z' 不是非法
我不记得<=是从右向左还是从左向右算了
假设从左向右吧:
'a'<=c得到一个TRUE或FALSE值,再用这个值与‘z’比较结果就不正确了
程序中的表达式不完全等于数学表达式。
1. 要注意别用数学上的写法,还有在C中没有其他语言可以使用的and运算符
2. A,"<="优先级"<"相同,就按从左到右结合0<=x得到0或者1,再与100比较
B中"=="优先级比"="高
C中,强制类型转换运算符语法规定要用(),要转换的项是表达式时也要加()
D x+1算的结果总要放到内存中,但左边的x+1并没有对应的内存空间,赋值没地方放
支持楼上