#include int main(){int a=2,b=0,c=0;c+=b&&a--;printf("a=%d\n",a);printf("c=%d\n",c);return 0;}运行结果为:a=2c=0分析如下:因为c+=b的逻辑值为0,那么不管a--是真还是假,整个表达式的值都是假,而C语言的处理是直接略过a--了,即不执行a--操作了,所以a的值输出还是2。
a=2;c=0;