下列 C程式,請問 t(2, 1, 3)與 t(5, 3, 4)回傳值各為何? int t(int x, int y, int z) { int n = z; if (y < z) { if (x < y) n = y; else if (x < z) n = y; } else { if (x > y) n = y; else if (x > z) n = x; } return n; }
(A) 2 與 4
(B) 1 與 4
(C) 3 與 5
(D) 3 與 3

答案:登入後查看
統計: A(25), B(144), C(74), D(22), E(0) #456006

詳解 (共 1 筆)

#841682
略為整理
int t(int x, int y, int z) { 
int n = z; 

if (y < z) { 
if (x < y) 
n = y; 
else if (x < z) 
n = y; } 

else { 
if (x > y) 
n = y; 
else if (x > z) 
n = x; } 
return n; } 


(1) t(x=2,y=1 ,z=3)
符合 y<z 進入if判斷式內,符合 x<z 進入else if判斷式內,所以n=y, 即輸出1

(2) t(x=5,y=3 ,z=4)
符合符合 y<z 進入if判斷式內,但是不符合其中兩個判斷式,所以 n=z, 即輸出4
7
0

私人筆記 (共 1 筆)

私人筆記#7476083
未解鎖
✅ 結論:t(2,1,3) → 1t(5...
(共 539 字,隱藏中)
前往觀看
0
0