c++,编写一个函数,用递归的方法求1+2+3+4+…+n的值。在主函数中进行输入输出。

  • Post author:
  • Post category:其他


【题目分析:】

嗯…………..我想了很久,实在不知道要怎么分析这么简单的题,抱歉,我太菜了

对了,如果发现有错误请在评论区或者私信告诉我,我会及时改正错误的(QaQ)。

该题可以使用两种方法进行编写

首先比较简单也比较好被初学者理解的就是for循环,使用循环累加达到想要的递归

【方法一:】

//方法1:for循环 
#include <iostream>
using namespace std;
int main(){
	int n,sum = 0;
	cout<<"请输入一个正整数:"<<endl;
	cin>>n; 
	for (int i=1 ;i<=n;i++)
    	sum += i;
	cout<<sum<<endl;
}

方法二:第二个方法其实也不是很难理解,就是构建一个递归的函数,然后再main()函数中调用它即可

//方法2:递归调用
#include <iostream>
using namespace std;
int sum( int n )        //根据题目定义递归规则
{
	if( n <= 0 ) return 0;
		else if( n == 1 ) return 1;
	else return sum( n - 1 ) + n;
}
int main()
{
    int n;
    cin>>n;
    cout<<sum(n)<<endl;
    return 0;
}




版权声明:本文为li_han_han原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。