[問題]自寫程式的問題

看板C_and_CPP作者 (CashSiang)時間8年前 (2015/12/03 12:22), 8年前編輯推噓2(203)
留言5則, 2人參與, 最新討論串1/1
我再練習用devc++寫一個取代數字的程式,但跑到最後就怪怪的 好像是後面的函式有壯況,但又不曉得在哪,前輩可以幫忙指點 一下嗎,還是新手,很多地方不夠專業,有什麼細節可以注意的 再麻煩各位提醒~ #include<iostream> using namespace std; void show(int*,int); void rep(int re,int *sco,int,int); int main(){ int size,re,want; int sco[]={89,54,78,89}; size=sizeof(sco)/sizeof(sco[0]); show(sco,size); cout<<"enter one number to be replace"; cin>>re; cout<<"enter one number you want"; cin>>want; rep(re,sco,size,want); show(sco,size); return 0; } void show(int*sco,int size){ int *t; t=sco; for(int i=0;i<=(size-1);i++) cout<<*(t+i)<<"\t"; } void rep(int re,int *sco,int size,int want){ int *t; sco=t; for(int i=0;i<=(size-1);i++) if(re==*(t+i)) *(t+i)=want; } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.107.188.16 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1449116523.A.180.html

12/03 12:28, , 1F
rep 裡面那行 sco = t; 是做什麼呢?
12/03 12:28, 1F

12/03 12:34, , 2F
不好意思,應該把下面的改成 if(re==*(t+i))
12/03 12:34, 2F

12/03 12:36, , 3F
我是想將位子改成指標變數的形式
12/03 12:36, 3F
※ 編輯: a2318aa (120.107.188.16), 12/03/2015 12:39:03

12/03 12:55, , 4F
可是這樣應該是 t=sco; 才對,像您前面寫的。
12/03 12:55, 4F

12/03 13:31, , 5F
謝謝,這樣的確就可以跑了
12/03 13:31, 5F
文章代碼(AID): #1MNyDh60 (C_and_CPP)