为什么最终答案不是19

img

宏定义是简单的替换,不要再替换时给他加上括号,画蛇添足;
替换后为:a+b*b+c+c+a;
望采纳!

1+2*2+3+3+1 = 12

a+bb+c+c+a=1+2x2+3+3+1=12
你该不会认为是这样吧?xy+z=(a+b)(b+c)+(c+a)

替换的意思是,并不会是(a+b)(b+c)+(c+a),因为宏定义中是xy+z,而不是(x)(y)+(z)
所以这题的结果是没括号 a+b * b+c + c+a