题目:若“int a=18;int x=50;int y=47;”则表达式:a+x%a*(int)(x+y)%(a+y);的值是多少?
自己给自己顺便出了一道题,但是怎么也做不对。
我计算出来的结果有二十几,三十几,五十几,但是代码运行出来的结果是76。
这个76是怎么运算出来的呢?
结果是76啊
x%a = 14
(int)(x+y) = 97
14 * 97 = 1358
(a+y) = 65
1358 % 65 = 58
a + 58 = 76
a+x%a*(int)(x+y)%(a+y),可以看一下运算符优先级相关的知识,它的计算是有先后顺序的,int a=18;int x=50;int y=47经过表达式计算,确实就是76。
望采纳!