猴子吃桃子的问题,我这递归怎么归不会来...

struggle201_ 2012-05-02 12:08:50
#include <stdio.h>
#include <stdlib.h>

int fun(int n)
{
if (n = 3)
{
return 1;
}
else
{
return (fun(n + 1) + 1) * 2;
}

}
main()
{
int i = fun(1);
printf("第一天共摘了%d个桃\n", i);
system("pause");
}


题目:

题目:一只猴子摘了N个桃子第一天吃了一半又多吃了一个,第二天又吃了余下的
一半又多吃了一个,到第十天的时候发现还有一个.
...全文
293 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
PANHL97 2012-05-02
  • 打赏
  • 举报
回复

int fun(int n)
{
if(n==1)
return 1;
else
return (fun(n-1)+1)*2;
}
main()
{
int i=fun(10);
printf("第一天共摘了%d个桃\n", i);
system("pause");
}
dream700 2012-05-02
  • 打赏
  • 举报
回复
仁兄,跳出条件你写对了??
if (n = 3)还是if (n == 3)?
check下吧

lyjgames 2012-05-02
  • 打赏
  • 举报
回复
听说要写成3==n 这样你少写一个等号也能查出来
Defonds 2012-05-02
  • 打赏
  • 举报
回复
逻辑运算符
DataChat.Club 2012-05-02
  • 打赏
  • 举报
回复

#include <stdio.h>h

//fun(n, day)表示第day天还剩下n个桃子
int fun(int n, int day)
{
if (day >1)
{
day --;
return fun((n + 1) * 2, day); //那么,第day - 1天还剩下(n + 1) * 2个桃子
}
else
{
return n; //第一天共采了n个桃子
}
}

main()
{
int i=fun(1, 10);//第10天还剩1个桃子

printf("第一天共摘了%d个桃\n", i);
}

onlylxm 2012-05-02
  • 打赏
  • 举报
回复
if(n=3)应该为if(n==3)

70,035

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧