作者qoo200033 (好時光)
看板C_and_CPP
標題[問題] 求倍數(使用遞迴)
時間Wed Mar 30 20:51:12 2011
問題:寫出一個可以計算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
推 KitWoolsey:你先return了 後面的multiple(i+1)就不會執行了啊... 03/30 20:53
推 loveme00835:因為你已經說出兇手是誰, 戲就演完啦... 03/30 20:54
推 KitWoolsey:不過result 可以吃這麼多值嗎 看起來好像Python... XD 03/30 21:04
推 ericinttu:樓上一語中的 03/30 21:09
→ uranusjr:return 改成 yield 再改一改就差不多了, 原 po 似乎很有 03/30 21:11
→ uranusjr:function programming 的天分XD 03/30 21:11
→ uranusjr:functional (錯字) 03/30 21:11
→ yauhh:答案可以有非常多個唷. 03/30 21:42