符合C语言语法的赋值表达式是: A.a=9+b+c=d+9 B.a=(9+b, c=d+9) C.a=9+b, b++, c+9 D.a=9+b++=c+9

如题所述

需要首先明确
1.)赋值操作符的优先级比“+”更低.
2.) 赋值操作符的返回值是赋值后的左操作数的值.
3.) 常量和表达式不能作为左值,不能作为左操作数(即不能放在二元运算符的左边).
A出现9+b+c=d+9这样的式子是不能完成赋值的,可以改为a=9+b+(c=d+9)
D的错误与A相同
C是三条语句,a=9+b;b++;c+9,也就是说后面的b++和c+9在这里没有意义
B括号中是逗号表达式,从左往右执行,返回最后一个表达式的值
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-16
正确答案是B和C,A和D编译器不通过,请采纳。。
第2个回答  2013-06-16
A 错,不能过表达式赋值
B 对
C 对
D 错,不能过表达式赋值本回答被提问者和网友采纳
第3个回答  2013-06-16
好像b,c都对?