编写一个递归函数求满足以下条件的最大值n?

xiamin 2008-04-19 10:46:06
(3)编写一个递归函数求满足以下条件的最大值n:
1+2+3+4+…+n<1000
...全文
1013 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jee1008 2011-04-06
  • 打赏
  • 举报
回复
为什么是“int &i”呢?和“int i”有什么不一样啊?
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
关注 接分
baihacker 2008-04-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 c_spark 的回复:]
C/C++ code#include <iostream>

using namespace std;

void solve(int &i, int sum, int Max)
{
if(sum + i >= Max)
return ;
i++;
solve(i,sum+i,Max);
}

int main()
{
int m = 1;
solve(m,0,1000);
printf("%d",m);
}



输出:
44
[/Quote]

int solve(int curr, int sum, int Max)
{
return curr+sum>=Max ? curr-1 : solve(curr+1, curr+sum, Max);
}
linuxsir2007 2008-04-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 c_spark 的回复:]
C/C++ code#include <iostream>

using namespace std;

void solve(int &i, int sum, int Max)
{
if(sum + i >= Max)
return ;
i++;
solve(i,sum+i,Max);
}

int main()
{
int m = 1;
solve(m,0,1000);
printf("%d",m);
}



输出:
44
[/Quote]
c_spark 2008-04-19
  • 打赏
  • 举报
回复
#include <iostream>

using namespace std;

void solve(int &i, int sum, int Max)
{
if(sum + i >= Max)
return ;
i++;
solve(i,sum+i,Max);
}

int main()
{
int m = 1;
solve(m,0,1000);
printf("%d",m);
}

输出:
44

70,037

社区成员

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

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