作业帮 > 综合 > 作业

若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是 A) n=(i=2,++i); B) j++;

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/11 06:12:01
若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是 A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0
若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是 A) n=(i=2,++i); B) j++;
前面的说明与后面的语句好像没关系,是否抄错了.
后面的语句:
A) n=(i=2,++i); 正确,小括号里是逗号表达式,先算 i 赋值2,再算 i 增1,由于是前缀加,把3赋值给了 n.
B) j++; 自增语句,正确.
C) ++(i+1); 错.小括号 是表达式,不是变量,不能作自增运算.
D) x=j>i; 估计你没抄完整.假定是 j>i,赋值语句 正确.根据当时条件成立与否,把真或假(1或0) 赋值给x