发布网友 发布时间:2024-04-18 22:43
共4个回答
热心网友 时间:2024-05-18 09:34
已测试,c语言是12,c++和java是11,孩子纠结吧,应该就是优先级不同编译器定义不同
这个题目如果按照优先级来算的话,应该是12,不过eclipse输出是11,所以可能不同编译器,对++和+的优先级规定不同吧,具体还是等大神来解释下吧
热心网友 时间:2024-05-18 09:34
int a = 5;有3个运算符:+、/、++
按优先级,应该是先++,再/,最后+
即:
1、a++ = 5,虽然此时a自身为6
2、b / a = 1,实际值为 6 / 5 = 1.2,因为两者都是int型,小数位被忽略了
3、最后即: 5 + 1 + 5 = 11
追答a++,即先算结果(即=5),再a自加1(即a为6)
++a,即先a自加1(即a为6),再算结果(即=6)
热心网友 时间:2024-05-18 09:35
答案是 a=11 首先b/a的结果是1 然后 5+1+5=11热心网友 时间:2024-05-18 09:35
a=11