a=b=c=0
a=(++b)+(c++)//该语句运行结束后变量a=1+0=1,b=1,c=1
a=(b--)+(- - c)//该语句运行结束后变量a=1+0,b=0,c=0
在=,||,&&三个符号的优先级顺序来看,=号的优先级最大,所以先进行=号的赋值运算。因此先进行a=++x但是赋值 *** 作中是从右往左的运算顺序所以先进行++x,所以x = 3,a=3赋值运算结束后,计算完成,不再进行后面的运算。所以答案选C!这道题考的其实是符号的优先级顺序,这个需要你牢记的!
b都没赋值,哪里能算出来结果?另外按照运算符优先级,d/b%a这句话就是从左到右依次执行,先算除法,再取余数。
d%c+b/a*5+5这句话就是算乘除法,再算取余,最后把三项相加。
以上所有运算均为整数运算,如果除法中涉及小数,会被截断成int数,即丢失小数部分、取整数部分再进行运算。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)