[問題] 出了哪種邏輯錯誤

看板C_and_CPP (C/C++)作者 (公爵)時間13年前 (2013/03/13 15:44), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
for(i=1;i<=numa;i++) { k=1;//數值存在個數初始為1個 for(j=2;j<=numa;j++) { if((a[i].id==a[j].id)&&(a[i].data1==a[j].data1)) { k++;//遇到重複,個數+1 } else { continue; } } if(k==1) { aa[numaa].id=a[i].id; aa[numaa].data1=a[i].data; numaa++; } } 目的要將a[]中不重複的元素存到aa[]中 可是每次執行完 aa[]的資料卻只剩下1筆 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.10.146

03/13 15:49, , 1F
for(j=i+1 ?
03/13 15:49, 1F

03/13 15:50, , 2F
numaa initialize?
03/13 15:50, 2F

03/13 16:13, , 3F
應該跟1F說的一樣,j=2的話會跟自己比較 結果會K!=1
03/13 16:13, 3F

03/13 16:14, , 4F
i = 2,j = 2的時候 k會加1
03/13 16:14, 4F

03/13 16:20, , 5F
感恩 謝謝樓上解釋
03/13 16:20, 5F
文章代碼(AID): #1HG2voKY (C_and_CPP)
文章代碼(AID): #1HG2voKY (C_and_CPP)