【题目描述】
用递归的方法求1+2+3+……+N1+2+3+……+N的值。
【输入】
输入NN。
【输出】
输出和。
【输入样例】
5
【输出样例】
15
递归的俩种方法
一:常规方法:
#include<iostream>
#include<cmath>
using namespace std;
int f(int n)
{
if(n==1)
return 1;
else
return n+f(n-1);
}
int main()
{
int n;
cin>>n;
cout<<f(n)<<endl;
cin>>n;
}
二:把结果定义成全局变量
#include<bits/stdc++.h>
using namespace std;
int sum;
void f(int x)
{
if(x==1)
sum=1;
else
{
f(x-1);
sum+=x;
}
}
int main()
{
int x;
cin>>x;
f(x);
cout<<sum<<endl;
return 0;
}
本文介绍了使用递归方法实现1到N的累加求和,提供了两种不同的递归实现方式:一种是通过返回值实现递归累加;另一种是利用全局变量进行累加。两种方法各有特点,适用于不同的场景。
264

被折叠的 条评论
为什么被折叠?



