[問題] 如何傳回陣列
題目是要寫一個function
可以列出所有由0~9其中任意四個不同數字所組成的數字
簡而言之就是可以列出從0123到9876共5040個數字
我已經寫了大部分(如下)
void createPool(int numPool[])
{
int num;
int a, b, c, d;
for(int i=0; i<5040; i++){
for(a=0; a<10; a++){
for(b=0; b<10; b++){
for(c=0; c<10; c++){
for(d=0; d<10; d++){
if(a==b || a==c || a==d || b==c || b==d || c==d)
continue;
else
numPool[i] = 1000*a+100*b+10*c+d;
}
}
}
}
}
}
可是這樣寫有個問題
就是0開頭的會只剩下三位數
若將for(int i=0; i<5040; i++){去掉
並將numPool[i] = 1000*a+100*b+10*c+d;
改為cout<<a<<b<<c<<d;
又沒有把所得數字傳回numPool[]
請問這個問題要怎麼解決呢?
謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.195.7
→
05/17 13:15, , 1F
05/17 13:15, 1F
推
05/17 13:17, , 2F
05/17 13:17, 2F
→
05/17 13:26, , 3F
05/17 13:26, 3F
推
05/17 17:20, , 4F
05/17 17:20, 4F
→
05/17 22:49, , 5F
05/17 22:49, 5F
→
05/17 23:12, , 6F
05/17 23:12, 6F
→
05/17 23:30, , 7F
05/17 23:30, 7F
推
05/18 06:12, , 8F
05/18 06:12, 8F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章