阿摩線上測驗 登入

申論題資訊

試卷:100年 - 100年高等三級暨普通考普通_資訊處理#29521
科目:程式設計
年份:100年
排序:0

題組內容

四、

申論題內容

⑵請問下列 C 程式片段執行後,a 陣列的內容為何?(7 分)
#define N 10
int a[N]={1,2,3,4,5,6,7,8,9,10};
int *p=&a[0], *q=&a[N-1], temp;
while(p < q)
{ temp=*p;
*p++=*q;
*q--=temp;
}

詳解 (共 1 筆)

詳解 提供者:hchungw
執行這段 C 程式片段後,a 陣列的內容將會是:
csharp

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
這是一個典型的「反轉陣列」操作。程式中的 while 循環將陣列的前後元素進行對調,直到兩個指標 p 和 q 相遇或交叉,也就是說,直到 p 不再小於 q。