
14题:是按位与然后再&&1
15题:括号表达式,从左到右运算,最后取最后一个的值。
14.
- 帮你解读一下程序,这里的a=()&&(),也就是只要两个括号里的条件都为true,a就是1,否则a为0。
- 先看x&15,这里的&只是一个运算符,代表求两者二进制的与操作。只有当x的值不是数值类型才会返回false,其他情况都会返回true。题目中x为int型,所以x能进行与操作,x&15的返回值就是true。
- 再看z<'a',这个是比较‘A’和'a'的ASCII码的大小,你可以查ASCII表知道'A'的ASCII值是比'a'小的,因此这个返回值也是true
- 这样综合一看,a的值就是true&&true,当然就是true,也就是1了。
15.
- 从左到右依次计算,先是a=a+b++,这里b++应该后算,先赋值a=a+b=15,然后b++,b变成11。
- 中间式子对结果无影响
- 最后一个式子就是最后的输出值,输出值就是b+1=12