作者a2318aa (CashSiang)
看板C_and_CPP
標題[問題]自寫程式的問題
時間Thu Dec 3 12:21:56 2015
我再練習用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
推 springman: rep 裡面那行 sco = t; 是做什麼呢? 12/03 12:28
→ a2318aa: 不好意思,應該把下面的改成 if(re==*(t+i)) 12/03 12:34
→ a2318aa: 我是想將位子改成指標變數的形式 12/03 12:36
※ 編輯: a2318aa (120.107.188.16), 12/03/2015 12:39:03
推 springman: 可是這樣應該是 t=sco; 才對,像您前面寫的。 12/03 12:55
→ a2318aa: 謝謝,這樣的確就可以跑了 12/03 13:31