問題詳情

39 下列 C 程式執行後的輸出為何?

 

 
(A) 30
(B) 33
(C) 60
(D) 80

參考答案

答案:A
難度:困難0.262948
統計:A(66),B(39),C(99),D(15),E(0)

用户評論

綠君】評論

不好意思,我驗證了一下,確實答案是(A),請您修改一下。DIV(y,z)*ADD(x,y)是 y/z*x+y,因為沒有括號,所以乘除優先後加減的順序。y/z 是 15/4,因為資料類型是int整數,所以結果是3。y/z*x是 3*5=15y/z*x+y是 15+15=30。因此答案最後是30,選項為(A)將下面指令放到網址內  線上compile_c#include <stdio.h#define ADD(x,y) x+y#define DIV(x,y) x/yint main(void){    int x=5,y=15,z=4;      printf("%dn",DIV(y,z)*ADD(x,y));    return 0;...

【站僕】摩檸Morning】評論

原本答案為C,修改為A

Yueh-Tseng Ho】評論

因為是define,所以就是把它定義的東西帶進去,如果那兩個define都改成function(下面那樣)答案就是60#include <stdio.hint b(int x,int y){ return x/y;}int c(int x,int y){ return x+y;}int main(){    int x=5,y=15,z=4;    printf("%d",b(y,z)*c(x,y));    return 0;}