话不多说,先上源码:
阶乘:
#include<iostream>
#include<bits/stdc++.h>
using namespace std;int JieCheng(int n);int main()
{int n;cin>>n;cout<<n<<"的阶乘是:"<<JieCheng(n)<<endl;
}int JieCheng(int n)
{int s;if(n==1){s=1;}else{s=n*JieCheng(n-1);}return s;
}
斐波那契数列:
#include<iostream>
#include<bits/stdc++.h>
using namespace std;int FeiBo(int n);int main()
{int n;cout<<"你想知道斐波那契数列的第几个数字的大小:";cin>>n;cout<<"斐波那契数列的第"<<n<<"个数字的大小为:"<<FeiBo(n)<<endl; }int FeiBo(int n)
{int s;if(n==1||n==2){s=1;}else{s=FeiBo(n-1)+FeiBo(n-2);}return s;
}
递归的本质就是不断调用本函数,最后找到出口。不要具体去一步步去推算递归函数,找到一个规律,写出通式。
思考过程如下(敲重点:一千个人有一千种想法,仅供参考,通过别人的思想找到自己的思想才是真正的学会。):
1.阶乘
a.出口:1的阶乘还是1
b.通式:一个数的阶乘等于它本身去乘以它前一个数的阶乘。
2.斐波那契数列
a.出口:数列的第一项和第二项都是1,从第三项开始有规律
b.通式:数列的第n项等于该数列的(n-1)项和(n-2)项之和。
**
最强剑道:
** 受尽苦难,不负野心
世界不应该那么遥远。