30 下列 C 語言程式的輸出為何?

(A) 53
(B) 62
(C) 66
(D) 68

答案:登入後查看
統計: A(50), B(58), C(88), D(32), E(0) #3429194

詳解 (共 2 筆)

#6761229
要解答這道考題,我們需要對給定的 C 語...
(共 786 字,隱藏中)
前往觀看
3
4
#6990084
p 指到A[1] 的位址
q 指到A[9] 的位址
ㅤㅤ
當q+3個位址 > p的位址時 
需要做  *(q--)=*(p++) *2
也就是 q(這時候是a[9]) = p(這時候是a[1])*2 之後再把q的位址-1 P的位址+1

嘗試展開
q q+3 執行後
a[1] a[9]  a[9] +3位址 a[9]=a[1]*2=2*2=4
a[2] a[8] a[8] +3位址 a[8]=a[2]*2=3*2=6
a[3] a[7] a[7] +3位址 a[7]=a[3]*2=4*2=8
a[4] a[6] a[9]位址 a[6]=a[4]*2=5*2=10
a[5] a[5] a[8]位址 a[5]=a[5]*2=0*2=0
a[6] a[4] a[7]位址 a[4]=a[6]*2=10*2=20
a[7] a[3]
a[6]位址
未執行
a[8] a[2]    
a[9] a[1]    
a[1]=2
a[2]=3
a[3]=4
a[4]=20
a[5]=0
a[6]=10
a[7]=8
a[8]=6
a[9]=4
ㅤㅤ
之後sum = sum+a[i] 從a[1] + a[2]+....~a[8] = 2+3+4+20+0+10+8+6 = 53

2
0