【试题043】C语言逻辑与小例题3

  1. 题目:设static int a;执行表达式(a==1)&&(a=-1)&&(a=2)后,a的值是?
  2. 代码+分析:
  //设static int a;执行表达式(a==1)&&(a=-1)&&(a=2)后,a的值是?
  static int a,b;
  b = (a == 1) && (a = -1) && (a = 2);
  printf("a=%d\nb=%d\n", a,b);
  //分析:a是静态变量,并没有初始化,所以a=0
  //然后判断a==1,0!=1, 0&&此时触发短路后边不再执行
  //a=0,表达式=0

3.截图:

【试题043】C语言逻辑与小例题3_第1张图片

你可能感兴趣的:(开发语言,c语言,笔记)