[問題] 求倍數(使用遞迴)

看板C_and_CPP (C/C++)作者 (好時光)時間15年前 (2011/03/30 20:51), 編輯推噓4(404)
留言8則, 5人參與, 最新討論串1/3 (看更多)
問題:寫出一個可以計算1~100中是7的倍數的函式,若為7的倍數則傳回main()中印出 程式碼 #include<stdio.h> int multiple(int); int main(void){ int result,i=1; result=multiple(i); printf("%d is 7 multiple\n",result); return 0; } int multiple(int i){ if (i==100) return (0); else{ if (i%7==0) return i; } multiple(i+1); } 答案永遠都只有一個,請問各位高手在遞迴的部分要怎麼寫比較好 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.101.8.85

03/30 20:53, , 1F
你先return了 後面的multiple(i+1)就不會執行了啊...
03/30 20:53, 1F

03/30 20:54, , 2F
因為你已經說出兇手是誰, 戲就演完啦...
03/30 20:54, 2F

03/30 21:04, , 3F
不過result 可以吃這麼多值嗎 看起來好像Python... XD
03/30 21:04, 3F

03/30 21:09, , 4F
樓上一語中的
03/30 21:09, 4F

03/30 21:11, , 5F
return 改成 yield 再改一改就差不多了, 原 po 似乎很有
03/30 21:11, 5F

03/30 21:11, , 6F
function programming 的天分XD
03/30 21:11, 6F

03/30 21:11, , 7F
functional (錯字)
03/30 21:11, 7F

03/30 21:42, , 8F
答案可以有非常多個唷.
03/30 21:42, 8F
文章代碼(AID): #1DaoT3YK (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1DaoT3YK (C_and_CPP)