一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
#include <stdio.h>
int duck(int i){
if(i==0){
return 2;
}else{
return (duck(i-1)+1)*2;
}
}
int main(int argc, const char *argv[])
{
int i=0;
for(i=7;i>0;i--){
printf("第%d个村卖了%d个鸭子\n",8-i,duck(i)-duck(i-1));
}
printf("一共有%d只鸭子\n",duck(7));
return 0;
}
运行结果: