猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个;以后每天早上都吃掉前一天剩下的一半零一个。到第五天早上想再吃时,发现只剩下一个桃子了。试编写程序,求第一天共摘了多少?
#include <stdio.h> #include <conio.h> #include <string.h> int GetSum(int day, int sum) { sum = (sum+1)*2; if(day==1) return sum; else GetSum(day-1, sum); } int main(int argc, char * argv[]) { //int sum=1; //int day=5; //while(day>1) //{ // sum = (sum+1)*2; // day--; //} //printf("%d", sum); //getch(); int sum=1; int day=5; printf("%d", GetSum(day-1,sum)); getch(); return 0; }