Fw: [考題] 中華電信101年計算機概論

看板Soft_Job作者 (something is wrong者水)時間13年前 (2012/04/04 14:58), 編輯推噓6(6010)
留言16則, 10人參與, 最新討論串1/2 (看更多)
※ [本文轉錄自 Examination 看板 #1FURfXvF ] 作者: malowda (malowda) 看板: Examination 標題: [考題] 中華電信101年計算機概論 時間: Mon Apr 2 22:40:31 2012 void f(int *p, int a[]){p=a;} void main() { int a[]={1,3,5,7}; int *p=&a[1]; f(p,a); p++; printf("%d",*(p)); } ANS:5 想法是p指向a的第一個位置也就是3 副程式中p=a是把a的第0個位置傳給p 主程式中的p和副程式中的p應該是指向同一個位置 都是a[0],然後p++應該是a[1] 原po的答案是3 請各位大大能夠幫幫原po我是那錯了 謝謝 ---------------- 這題小弟也是3 不知有沒高手可以開釋一下 還是答案錯了呢 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.252.184.168

04/02 22:43, , 1F
我也錯,後來覺得應該是f沒作用,因為沒丟指標進去...同swap
04/02 22:43, 1F

04/02 22:44, , 2F
應該要f(&p,a)...不然p=a的動作隨著function結束而回收
04/02 22:44, 2F

04/02 22:47, , 3F
謝謝大大
04/02 22:47, 3F

04/03 01:47, , 4F
f(&p,a)會error吧...
04/03 01:47, 4F

04/03 17:50, , 5F
沒問題...只不過參數宣告要變成void(int **p,int a[]) *p=a;
04/03 17:50, 5F

04/03 17:51, , 6F
這才是function有作用的寫法 樓樓上看看吧...
04/03 17:51, 6F

04/03 21:28, , 7F
回到main()時,p這個指標變數(整數變數)就變回原來main()
04/03 21:28, 7F

04/03 21:29, , 8F
中&a[1]的位址 http://bit.ly/HbpDXL
04/03 21:29, 8F
※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: idforask (220.131.17.141), 時間: 04/04/2012 14:58:16 ※ 編輯: idforask 來自: 220.131.17.141 (04/04 14:59)

04/04 15:36, , 9F
先去弄清楚甚麼是call by value
04/04 15:36, 9F

04/04 15:37, , 10F
不是死記就可以的...題目可以換
04/04 15:37, 10F

04/04 16:01, , 11F
哈,我沒有上當,沒想到計概會出這種題目,中華電信很厲害
04/04 16:01, 11F

04/04 16:02, , 12F
f()內的 p 沒有 dereference
04/04 16:02, 12F

04/04 16:14, , 13F
今年考的程式有些要念到才有辦法寫 像vector<>來做stack
04/04 16:14, 13F

04/04 16:31, , 14F
程式用唸的?好像怪怪的,程式有實際寫過的話,不應不會做
04/04 16:31, 14F

04/04 16:39, , 15F
太久沒用到就會忘了 尤其是要用才去查就好的東西
04/04 16:39, 15F

04/04 16:49, , 16F
那算是不夠熟練了,多寫多用到自然就一定會的
04/04 16:49, 16F

04/04 16:49, , 17F
我工作面試時也是這樣呀,當場寫出來
04/04 16:49, 17F

04/04 21:10, , 18F
答案是5嗎?
04/04 21:10, 18F

04/04 23:13, , 19F
答案是5沒錯
04/04 23:13, 19F

04/04 23:52, , 20F
void main() 耶... 看到就不想寫
04/04 23:52, 20F

04/05 01:05, , 21F
大一的計算機程式...Ans:5
04/05 01:05, 21F

04/05 10:41, , 22F
這是考operator的意義,傳值與傳址的區別.不過粗心還是會被騙
04/05 10:41, 22F

04/05 10:42, , 23F
,我也被騙了. X(
04/05 10:42, 23F

04/05 15:20, , 24F
被騙+1 沒看清楚指標P本身也是區域變數真的會中計
04/05 15:20, 24F
文章代碼(AID): #1FU_49y- (Soft_Job)
文章代碼(AID): #1FU_49y- (Soft_Job)