首页 > 试题广场 >

设 a,b,c 为整型变量,执行语句

[单选题]
设 a,b,c 为整型变量,执行下面语句
a = 2;
b = 9;
a++;
c = --b;
a += b - c;
后 a 的值为( )
  • 7
  • 4
  • 3
  • 2
推荐
选择C
a=2;
b=9;
a++;//执行完之后a变为3 
c=--b;//先执行等号右边变量b自减,变为8,再赋值给c,c同样为8 
a+=b-c;//先执行等号右边,b-c得0,再将a的值与之相加赋给a,易得a的值为3 
综上执行完毕之后,有a=3,b=8,c=8。
编辑于 2019-11-07 14:18:48 回复(1)

答案选C


此题考查 前置++ 与 后置++ 和 运算符号的优先级
a=2;b=9;a++;c= --b;a+=b-c
第一步:a = 2, b = 9
第二步:a++ => a = 3
第三步:c = --b => b = 8, c = 8
第四步:a += b - c => a += (b-c) => a += 0 => a = 3

发表于 2019-11-07 12:50:33 回复(1)
不要忘了b的自减
发表于 2020-05-24 14:04:56 回复(0)
a=2;
b=9;
a+=1;//a=3,b=9;
b-=1;//a=3,b=8;
c=b;//a=3,b=8,c=8;
a=a+(b-c);//a=3,b=8,c=8;
发表于 2019-11-06 16:16:35 回复(0)
a=2->a++=3;
c=- -b=b-1=8;
a+=b-c=a+(b-c)=3
发表于 2019-11-09 16:54:56 回复(0)
C。考察的是运算符执行顺序。
根据题目:
  1. a=2;b=9;c=0;
  2. a++;    //  a为3
  3. c= --b;  //先执行--符号,即c=8,b=8
  4. a+=b-c; //先执行b-c为0,a=a+0,a为3
发表于 2019-11-06 18:24:12 回复(0)
下次做这种题,注意每一个变量的变化。
发表于 2023-08-30 19:35:34 回复(0)
特别注意第三步:a++并未将最后的值赋给a,所以a还是2
发表于 2022-03-15 20:03:03 回复(0)
一路执行:a=2,b=9,a=3,c=8,a=3。好了,答案出来了~
发表于 2021-04-27 14:43:48 回复(0)
发表于 2021-02-18 15:00:00 回复(0)