练习题目三
用递归进行阶乘
运行代码

#include<iostream>
using namespace std;
int f(int n);
int n;
int main()
{
	cin>>n;
	cout<<f(n);
 } 
 
 int f(int n)
 {
 	if(n<=1){
 		return 1;
	 }
 	return n*f(n-1);
 }

编写心得
递归的核心个人感觉是在返回return,比如这个阶乘的函数,当他返回值为nf(n-1)的时候,继续带入f(n)的函数,公式就会一直乘以f(n-1),即nf(n-1)....f(2)*f(1),在f(1)这里需要加一个if条件判断n在此时是不是需要继续进行递归,若不加入if判断,程序会一直进行下去导致程序崩溃,加入if条件当n减至1时停止程序进行并输出,从而达到程序运用递归的方法去进行阶乘的效果。理解了return的用法,也就进而理解了递归的使用方法。

相关文章:

  • 2021-11-09
  • 2021-08-24
  • 2021-09-20
  • 2021-09-20
  • 2021-09-20
  • 2021-09-20
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-20
  • 2022-12-23
  • 2021-09-20
  • 2022-02-20
相关资源
相似解决方案