首先题目中的变量类型是double型的而非int型所以不会存在除后只保留整数的情况,然后题目中说选择不等价的,那么A和C肯定没问题,剩下的B和D根据除法定律:连续除去两个数,等于除去这两个数的积:a÷b÷c=a÷(b×c)。所以D是对的,B是错的。
比如a=1,b=2,c=3。a/b/c=1/2/3=0; 1/(2/3)=1/0。而D的就是简单的数学除法运算。
/除法在C语言中具有左结合性,因此要从左往右开始计算,故a/b/c=(a/b)/c。这里有一个技巧,当出现多个除法的时候其实是很难辨别的,可以转化为乘法,也就是前式=(a/b)*1/c,这样来看,一样就能看出来A其实就是把1/C放到上面去了,而D则是放到下面了