下列 C 程式執行後的輸出為何? # define ADD(x,y) x+y # define DIV(x,y) x/y int main(void) { int x = 5, y = 15, z = 4; printf("%d\n", DIV(y,z)*ADD(x,y)); }
A30正確答案
B33
C60
D80
答案與詳解
巨集展開為 y/z*x+y,代入數值為 15/4*5+15。依據C語言由左至右、先乘除後加減的規則,且 15/4 為整數除法得 3,算式變為 3*5+15 = 15+15 = 30。
