1.本次課學習到的知識點:
函數
(1)定義:函數是一個完成特定工作的獨立程序模塊,包括函數和自定義函數兩種:
1.scanf(),printf()等為庫函數,由c語言系統提供定義,編程時只要直接調用即可。
2. cylinder(),fact()函數,需要用戶自己定義,為自定義函數。
(2)cylinder(),fact()功能不同,但他們能實現一個計算,並可以得到一個明確的計算結果。
(3) 函數定義的一般形式為:
函數類型 函數名(形式參數表)
{
函數實現過程
}
(4)函數部首:由函數類型、函數名和形式參數表組成,位於函數定義第一行。 函數首部后面不能加分號,它和函數體一起構成完整的函數定義。
函數體:體現函數的實現過程。
(5)函數的調用
函數調用過程:任何c程序執行,首先從主函數main()開始
函數調用的形式:函數名(實際參數表)
實際參數可以使常量,變量和表達式
對於實現計算功能的函數,函數調用通常出現兩種情況下:
賦值語句 volume=cylinder(radius,height);
輸出函數的實參 printf("%f",cylinder(radius,height));
實參和形參一一對應,數量應相同,順序應一致。
(6)函數結果返回: return 表達式。
(7) 函數聲明是一條c語言,而函數定義時的函數首部不是語句,后面不能跟分號.
2.實驗過程中遇到的問題及解決方法:
(1)將以前學過的程序改寫成函數的調用形式是容易出現格式錯誤
(2)在定義格式時,容易忘記寫明形參類型
(3) 解決方法:對應結果多次修改、嘗試,並咨詢老師
3.實驗心得體會及本章學習總結
函數是c語言程序的基本組成單元,編寫每一個程序都需要用到函數,如main()函數和priintf()、scanf()等函數。
本章介紹了函數的定義和使用,討論了變量與函數的關系。
函數首部三要素:函數類型,函數名,形式參數表。
函數的調用:任何c程序執行,首先從主函數main()開始,如果遇到某個函數調用,主函數被暫停執行,轉而執行相應的函數,該函數執行完后將返回主函數,然后再從原先暫停的位置繼續執行。
形參和實參必須一一對應,實參的值依次傳給形參。
4.預習:
(1) 不返回結果的函數:
定義:void函數名(形參表) /*函數首部*/
{
函數實現過程 /*函數體*/
}
函數類型為void,表示不返回結果,函數體中沒有表達式的return語句,也可省略return。
不返回結果的函數在定義、調用、參數傳遞、函數聲明上,思路與以前相同,適用於把一些確定的、相對獨立的程序功能封裝成函數。
(2)例5-5:
Pyramid()函數的功能是在屏幕上輸出金字塔,不做任何運算,也沒有運行結果,不需要返回值。
函數定義時,形參n決定了輸出數字金字塔的層數。
函數聲明:c語言要求函數先定義后調用。如果自定義函數被放在主調函數的后面,就需要在函數調用前,加上函數原型聲明。