C语言,为什么选C不选D?
1.若x、b、m、n均为int型变量,执行下面语句后b的值为______。(知识点3.10)m=20;n=6;x=(--m==n++)?--m:++n;b=m++;A)1...
1. 若x、b、m、n均为int型变量,执行下面语句后b的值为______。(知识点3.10)
m=20;n=6;
x=(- -m= =n++)?- -m:++n;
b=m++;
A)11 B)6 C)19 D)18 展开
m=20;n=6;
x=(- -m= =n++)?- -m:++n;
b=m++;
A)11 B)6 C)19 D)18 展开
展开全部
自增自减在前面是先自增自减,再参与运算。在后面则是先参与运行,等整句命令完毕后才自增自减
执行顺序:
--m => m:19
m==n => 0
++n => n:7
x=n => x:7
n++ => n:8
b=m => b:19
m++ => m:20
执行顺序:
--m => m:19
m==n => 0
++n => n:7
x=n => x:7
n++ => n:8
b=m => b:19
m++ => m:20
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x=(- -m= =n++)?- -m:++n;这一句--m只计算了一次。因为条件不满足,编译器直接跳到冒号后面的语句
b=m++;这一句先把m的值赋值给b,再计算m+=1
b=m++;这一句先把m的值赋值给b,再计算m+=1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是选c
x=(- -m= =n++)?- -m:++n;中--m 一次。因为不相等所以直接执行++n。
x=(- -m= =n++)?- -m:++n;中--m 一次。因为不相等所以直接执行++n。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第二行执行完后M=19,第三行b=m++的意思是先把m的值即19赋给b,然后再执行m++
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
翻译成:x=(19==6)?18:8;
b=18;
//--或++在前面就是先计算再用,反之就是先用在计算
b=18;
//--或++在前面就是先计算再用,反之就是先用在计算
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询