C博客做業03--函數

0.展現PTA總分

1.本章學習總結

  • 函數的功能
    • 接收數據。
    • 對接收的數據進行處理。
    • 將數據處理的結果返回或者不返回。
  • 函數的聲明
    • 若是函數的定義在函數的調用的後邊則要進行函數聲明,若是函數的定義在函數調用以前則不用聲明。
    • 函數聲明以下:
    int max(int a,int b);
  • 函數的定義
函數類型 函數名稱 (形式參數)
{
  語句1;
  語句2;
  ……
}
  • 函數的調用
函數名 (實際參數表)
- 函數調用一般用於賦值語句和輸出函數的實參。
  • 一個函數調用另外一個函數所具有的條件
    • 首先被調用的函數必須是已經存在的函數。
    • 若是使用本身定義的函數,並且該函數與使用它的函數在同一文件中,通常還應該在主調函數中對被調函數作聲明。
    • 若是已在全部函數定義以前,在函數的外部已經作了聲明,則在各個主調函數中沒必要過多對所調用函數作聲明。
  • 須要注意的地方
    • 函數不能夠嵌套定義,可是能夠嵌套調用。
    • 函數名必須是由字母、數字、下劃線組成,但只能由字母開頭。
    • 函數的類型和參數類型能夠是其餘類型,好比float,double型等,函數的類型還能夠是void型,這種類型的函數不須要return語句返回值。
    • 庫函數由系統提供,包含相應的頭文件,便可調用,好比printf函數和scanf函數,在包含了stdio.h頭文件後就可使用,而自定義函數是咱們本身創造的函數。
  • 形參和實參
    • 實參能夠是常量、變量或者表達式。
    • 形參必須是變量,用於接受實參傳遞過來的值。
    • 實參和形參必須一一對應,二者數量相同,類型儘可能一致。
    • 實參變量對形參變量的數據傳遞是「值傳遞」,即單向傳遞,只有實參傳遞給形參,而不能形參傳遞給實參。
    • 在定義函數中指定的形參,在未出現函數調用時,不佔用內存中的儲存單元,只有發生調用時,纔會分配內存。
  • 函數的返回值
    • 函數類型爲void,表示不返回結果。
    • 函數的返回值經過函數中的return語句獲取。
    • 若是函數值的類型和return語句中的表達式不同,則以函數類型爲準。
    • 在不返回結果的函數定義中,void不能省略,不然函數類型被默認爲int。
  • 局部變量
    • 定義在函數內部的變量稱爲局部變量,其有效範圍侷限於所在函數內部。
    • 使用局部變量能夠避免各個函數之間的變量相互干擾。
    • 做用於複合語句中的局部變量,其有效範圍被侷限於複合語句內,通常用做小範圍內的臨時變量。
  • 全局變量
    • 定義在函數外而不屬於任何函數的變量稱爲全局變量。
    • 通常狀況下把全局變量定義在程序的最前面,即第一個函數前面。
    • 當某函數的局部變量與全局變量同名時,在該函數中全局變量不起做用,而由局部變量起做用。
    • 全局變量的做用範圍是從定義開始到程序所在文件的結束,它對做用範圍內全部的函數都起做用。
    • 全局變量雖然能夠用於多個函數之間的數據交流,但通常狀況下,應儘可能使用局部變量和函數參數。編程

      1.2本章學習體會及代碼量學習體會

      1.2.1學習體會

    • 學習了本章函數,更讓我深刻了解到學習C語言主要是靠本身的邏輯思惟經過一些關鍵字,語法和庫函數來組織或構造一個完整的函數,因此鍛鍊咱們的抽象邏輯思惟能力特別重要,要想提升本身的編程能力,以我目前的代碼量是遠遠不夠的,還須要堅持反覆勤加練習。
    • 這兩週代碼量爲1200行左右。函數

      2.綜合做業

      2.本次做業的函數關係圖

      3.函數功能及全局變量介紹

  • Welcome()函數
  • IntoMemu()函數
  • GetCalculation()函數

    學習

  • 主函數
    測試

3.1全局變量

3.2ListMenu()函數

4.運行結果截圖,測試用例

5.大做業總結

  • 我感受此次大做業對我來講很複雜,由於我徹底沒有思路,真的不會寫,寫的時候徹底不知道要作什麼,感受無從下手,特別地絕望,確定是我水平不夠,沒有一點編程基礎。造函數的時候思路很混亂,製造了幾個函數後面殊不知道有什麼用,感受沒有一點邏輯思惟。而後,我花了大量時間卻未能完成本次做業,效率很是低,質量也不好,也說明了個人基礎真的不好,代碼量遠遠不夠。經過此次大做業我也明白了本身編程的薄弱,更須要花更多的時間來學習。[]
相關文章
相關標籤/搜索