藍(lán)鷗(www.lanou3g.com)是一家集產(chǎn)、學(xué)、研、創(chuàng)為一體的綜合性移動(dòng)互聯(lián)網(wǎng)研發(fā)培訓(xùn)機(jī)構(gòu),致力于iOS開發(fā)、Unity3D游戲開發(fā)、Android開發(fā)、HTML5前端開發(fā)和Web安全攻防等技術(shù)人才的培養(yǎng)。
一、遞歸
遞歸-在方法體內(nèi),再次調(diào)用方法本身
遞歸必須有出口
usingSystem;
namespacelesson_12
{
publicclassMath{
//遞歸就是在方法內(nèi)部調(diào)用方法本身
//1、遞歸必須有結(jié)束條件
//2、將大的復(fù)雜的問題分解為與原問題類似的小問題來(lái)問題,并且小問題和原問題是同一件事并且更簡(jiǎn)單
//遞歸本身是一種算法
publicintF(intn){
//結(jié)束條件
if(n>1){
//進(jìn)行遞歸
returnF(n-1)+n;
}else{
return1;
}
}
}
classMainClass
{
publicstaticvoidMain(string[]args)
{
//計(jì)算:1+2+3+4……+99+100的和
//遞歸解決
Mathm=newMath();
Console.WriteLine(m.F(100));//5050
}
}
}
練習(xí):
1、利用遞歸計(jì)算1+2+3+4……+100的值
2、求n=18時(shí)n!。(1*2*3***18)