IOS 階段學習第七天筆記(函數、遞迴),ios第七天

來源:互聯網
上載者:User

IOS 階段學習第七天筆記(函數、遞迴),ios第七天

一、函數

 1)概念:具有特定功能的代碼塊的封裝

 2)函數的定義: 函數類型+函數名(形參列表)

     函數類型 函數名(形參類型1  形參名1,形參類型2   形參名2.....){

            函數體;//函數的實現

     }

 3)函數名要符合標示符的定義

 4)函數的傳回型別可為空白,為空白用void;也可以是其他資料類型。

 5)void函數的調用:函數名(); void類型不能用任何類型去接收。

 6)int 類型函數的調用:定義int類型的資料去接收函數的傳回值,例如: int sum=add(x,y); 有時候也可以忽略      傳回值

 7)return 函數的返回 ,void函數的return語句可以省略也可以return 空,return語句可以有多條,以執行到的第一句為準。

 8)非void的其他類型,return 運算式類型要和定義的類型匹配

 9)傳回型別與接收類型不符時不一定會報錯,但會造成精度的損失,例如:int類型的函數用char類型接收

10)函數的好處:將不同的功能實現封裝起來,容易閱讀和維護;便於分工,調用的人可以不關心具體的實現。

11)函數使用的注意點:

    1、函數名要言之有物,名字和功能一致。

    2、介面要精簡(形參,傳回值)

    3、實現的功能要單一,不要混雜。

    4、對外的函數介面要由詳細的注釋

12)局部變數:從變數定義的位置開始到定義所在的方法體的“}”結束

13)函數啟動並執行過程:

      1、給形參開闢空間

      2、實際參數給形式參數傳值

      3、形式參數參與運算

      4、return 的時候形參銷毀

14)全域變數:定義在方法體外面的變數,優點所有函數都能訪問,缺點所有函數都能修改不安全。

15).c檔案寫方法的實現;.h檔案放函數的聲明。

16)函數的聲明: 函數傳回型別   函數名(形參類型1  形參名1,形參類型2  形參名2....)。

17)函數在main後面定義,但是必須要在main之前聲明。

18)標頭檔存放內容:

    1、函數的聲明

    2、類型定義 #typedef

    3、宏定義 #define  

19)函數都是平級的可以相互調用,也可以自己調用自己。

 

二、遞迴

1)概念:函數自己調用自己的一個過程

2)遞迴的優點是使代碼結構層次更清晰使程式更簡潔,缺點是佔用資源太多,可能造成堆疊溢位。

3)使用遞迴演算法 計算斐波拉契數列

實現代碼:

 1 int fblq(int n){ 2    if(n==1||n==2) 3       return 1; 4    else  5      return fblq(n-1)+fblq(n-2); 6 } 7 int main(){ 8   int len=20; 9   for (int i=1; i<=len; i++) {10     printf("%d ",fblq(i));11   }12   return 0;13 }

 4)使用遞迴求兩個數的最大公約數

實現代碼:

 1 int ComDiv(int x,int y){ 2     if(x%y==0) 3        return y; 4      else   5        return ComDiv(y,x%y); 6 } 7  8 int main(){ 9    printf(“%d”, ComDiv(28,35));10    return 0;11 }

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.