以下不符合C语法的赋值语句是 。 A、m=(2+1,m=1) B、m=n=0 C、m=1,n=2 D、n++;

如题所述

选D,D是自增运算,而不是赋值。
A选项m=1,因为逗号运算符是优先级最低的,m=(2+1,m=1)相当于把逗号表达式(2+1,m=1)的值赋给m,逗号表达式的值是最右边那个数的值,所以m=1
B选项m=0,n=0,支持连续赋值。
C选项m=1,n=2,不用多说,进行两次赋值而已。
D选项只是对n自增
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-15
这道题,他没写完全。我在谭浩强的第二版C程序设计试题汇编里 P14页 3.20题看到一样的。这道题的原来选项是A、 m=(2+1,m=1);
B、m=n=0;
C、m=1、n=2
D、n++;
如果按题主所问 应该是只有D选项符合赋值语句,如果按照书上的原题来看应该选C。
因为赋值语句需要有分号‘;’结尾
另外吐个槽:评论别人的回答可以但别骂人,都是自愿回答,又没有利益为啥要骂人
第2个回答  2019-02-06
根据题意,
a:左侧为代数式,故不是赋值语句
b:左侧为数字,故不是赋值语句
c:左侧为用逗号隔开的式子,故不是赋值语句
d:赋值语句,把m-1的值赋给m.
故选d.
相似回答