4.if((++a >0) && !(b-- <=0))中的赋值问题
if((++a >=0) && !(b-- <0))在此处表示为,当前一项成立时,则执行a++,b--:当前一项不成立时,则执行a++
例如当a=-1,b=1时,因为a ++ = 0 所以++a >=0成立,继续有b-- = 0 所以 b-- <0不成立,又有 !(b-- <0),故此项也成立,所以此处if语句条件为真。
【例】以下程序的输出结果是()
A.-11 B.01 C.10 D.00
【答案】C
【解析】当a = -1 , b = 1:时, 因为a+1 = 0 ,所以++a < 0 不成立,所以此处if语句不成立,只能执行else语句,由于此时a = 0 ,b = 1 ,故选C
5.static静态变量
static静态变量有如下特点:
①、如果未赋初值,则系统自动赋值为0
②、会保存被修改的值
③、生存周期会贯穿于整个程序运行期
【例】以下程序的输出结果为()
A.33 B.22 C.26 D.25
【答案】C
【解析】:第一次循环:i=1 小于x=3,跳入函数incre中,此时x =1,x=x*(x+1)=1*2=2,输出2:
第二次循环:i=2 小于x=3,跳入函数incre中,此时x =2,x=x*(x+1)=2*3=6,输出6:
故输出答案为26