文章时效性提示
本文发布于 497 天前,部分信息可能已经改变,请注意甄别。
猴子吃桃问题:
- 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
递归解决:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| #include <stdio.h> int Cal_Peach(int day,int Left_Peach) { if (day==1) { return (Left_Peach + 1) * 2; } else { int temp = (Left_Peach+1)*2; return Cal_Peach(--day, temp); } } int main() { int day = 9; int Left_Peach = 1; int Peach = Cal_Peach(day,Left_Peach); printf("%d\n",Peach); return 0; }
|
for循环解决:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #include <stdio.h> int main() { int day; int x = 1; int y = 0; for (day=9; day>=1; day--) { y = ( x + 1 ) * 2; x = y; } printf("%d\n",y); return 0; }
|