freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言函數(shù)ppt課件(已修改)

2025-01-18 13:57 本頁面
 

【正文】 教學(xué)內(nèi)容 函數(shù)基礎(chǔ) 教學(xué)目標(biāo) 應(yīng)知 函數(shù)的定義與調(diào)用 應(yīng)會(huì) 進(jìn)行有參、無參函數(shù)的定義并進(jìn)行調(diào)用 進(jìn)行有返回值、無返回值函數(shù)的定義與調(diào)用 難點(diǎn) 函數(shù)的定義和調(diào)用方法 英文詞匯 中文名 call 調(diào)用 return value 返回值 function 函數(shù) declare 聲明 parameter 參數(shù) static 靜態(tài)的 extern 外部的 global 全局的 local 局部的 例 1: 在屏幕上打印五行” *”號(hào),每行分別是 5個(gè), 30個(gè),40個(gè), 28個(gè), 50個(gè)。 i=1 to 5 printf(“*”) i=1 to 30 printf(“*”) i=1 to 40 printf(“*”) i=1 to 28 printf(“*”) i=1 to 50 printf(“*”) include void main() { int i。 for(i=1。i=5。i++) printf(*)。 printf(\n)。 for(i=1。i=30。i++) printf(*)。 printf(\n)。 for(i=1。i=40。i++) printf(*)。 printf(\n)。 for(i=1。i=28。i++) printf(*)。 printf(\n)。 for(i=1。i=50。i++) printf(*)。 printf(\n)。 } ? 函數(shù) ——完成某一特定特定功能的模塊,是程序設(shè)計(jì)的基本單位。 ? “一個(gè)程序應(yīng)該是輕靈自由的,它的 子過程 就象串在一根線上的珍珠。” Geoffrey James的 《 編程之道 》 ? 一個(gè) C程序可以由一個(gè) 主函數(shù) 和 若干個(gè)函數(shù) 構(gòu)成。由主函數(shù)調(diào)用其他函數(shù)。其他函數(shù)也可以互相調(diào)用。同一個(gè)函數(shù)可以被一個(gè)或多個(gè)函數(shù)調(diào)用任意多次。 , g h main a b c d i e e f h g ? 一個(gè)源程序文件由一個(gè)或多個(gè)函數(shù)組成。一個(gè)源程序文件是一個(gè)編譯單位,即以 源程序?yàn)閱挝贿M(jìn)行編譯 ,而不是以函數(shù)為單位進(jìn)行編譯 ? C程序的執(zhí)行 從 main開始 ,調(diào)用其他函數(shù)后流程返回到 main函數(shù),在 main函數(shù)中結(jié)束 整個(gè)程序的運(yùn)行 ? 所有的函數(shù)都是平行的,即在 定義函數(shù)時(shí)是互相獨(dú)立的。 從用戶使用的角度看,函數(shù)有兩種: ? 標(biāo)準(zhǔn)函數(shù)(庫函數(shù)) :這是由系統(tǒng)提供的,用戶不必自己定義這些函數(shù),可以直接使用它們 ? 用戶自己定義的函數(shù): 用以解決用戶的專門需要。 從函數(shù)的形式看,函數(shù)有兩種: ? 無參函數(shù) :在調(diào)用無參函數(shù)時(shí),主調(diào)函數(shù)并不將數(shù)據(jù)傳送給被調(diào)用函數(shù),一般用來執(zhí)行指定的一組操作。 ? 有參函數(shù): 在調(diào)用函數(shù)時(shí),在主調(diào)函數(shù)和被調(diào)函數(shù)之間有數(shù)據(jù)傳遞。 根據(jù)的運(yùn)算結(jié)果:函數(shù)可以分為兩種: ? 有返回值函數(shù) :此類函數(shù)調(diào)用執(zhí)行完后將向調(diào)用者返回一直執(zhí)行結(jié)果,稱為函數(shù)返回值。由用戶定義的這種要返回函數(shù)值的函數(shù),必須在函數(shù)定義和函數(shù)說明中明確返回值的類型。 ? 無返回值函數(shù): 此類函數(shù)用于完成某項(xiàng)特定的處理任務(wù),執(zhí)行完成后不向調(diào)用者返回函數(shù)值。由于函數(shù)無須返回值,用戶在定義此類函數(shù)時(shí)可指定它的返回值為“空類型”或者 void。 對(duì)于用戶自定函數(shù),必須滿足函數(shù)三要素: ? 函數(shù)聲明 ? 函數(shù)定義 ? 函數(shù)調(diào)用 函數(shù)類型 函數(shù)名 () { 聲明部分 語句 } 函數(shù)首部 函數(shù)體 函數(shù)體是用一對(duì)花括號(hào)括起來的語句系列,它描述了函數(shù)實(shí)現(xiàn)某一功能的執(zhí)行過程。如果函數(shù)類型不為 void,則函數(shù)最后要執(zhí)行返回。( return)詳見課本 p95 include void main() { void printstar()。 //對(duì) printstar函數(shù)進(jìn)行聲明 void print_message()。 //對(duì) print_messge函數(shù)進(jìn)行聲明 printstar()。 //調(diào)用 printstar函數(shù) print_message()。 //調(diào)用 print_messge函數(shù) printstar()。 //調(diào)用 printstar函數(shù) } void printstar() //定義 printstar函數(shù) { printf(*******************************\n)。} void print_message() //定義 print_message函數(shù) { printf( 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 10計(jì) 72班 \n)。 } 設(shè)計(jì)函數(shù)的三位置: 函數(shù)聲明 、 函數(shù)定義 、 函數(shù)調(diào)用 函數(shù)類型 函數(shù)名 (形式參數(shù)表列 ) { 聲明部分 語句部分 } 形參列表 形式: 類型名 形參 1,類型名 形參 2, … int max(int x,int y) { int z。 z=xy?x:y。 return z。 } 函數(shù)首部 函數(shù)體 字符串函數(shù) strcat(),strcpy().strcmp(), strlen() 注意: ( 1)需要加頭文件 ( 2)這幾個(gè)字符串函數(shù)的參數(shù)是字符數(shù)組名 ( 3) strlen()與 sizeof()的區(qū)別 ( 4)‘ \0?的意義及用法 ( 5)不使用字符串函數(shù)實(shí)現(xiàn)相應(yīng)的功能 函數(shù)的意義、函數(shù)三要素 函數(shù)的分類(從三個(gè)不同的方面) ——有參函數(shù)與無參函數(shù),有返回值的函數(shù)與無返回值的函數(shù) 例 1: 在屏幕上打印五行” *”號(hào),每行分別是 5個(gè),30個(gè), 40個(gè), 28個(gè), 50個(gè)。 i=1 to n printf(“*”) print(5)。 print(30)。 print(40)。 print(28)。 print(50)。 include void main() { void print(int n)。 print(5)。 print(30)。 print(40)。 print(28)。 print(50)。 } void print(int n) { int i。 for(i=1。i=n。i++) printf(*)。 printf(\n)。 } 函數(shù)定義 函數(shù)聲明 函數(shù)調(diào)用 函數(shù)類型 函數(shù)名 () {} ? 調(diào)用空函數(shù)時(shí),什么工作也不做,沒有實(shí)際作用 ? 在主函數(shù)中寫上空函數(shù),表明這里要調(diào)用一個(gè)函數(shù),而現(xiàn)在這個(gè)函數(shù)沒有起作用,等以后擴(kuò)充函數(shù)功能時(shí)補(bǔ)充上。 ? 程序的結(jié)構(gòu)清楚,可讀性號(hào),以后擴(kuò)充新功能,對(duì)程序結(jié)構(gòu)影響不大 void dummy() {} void dummy() { 。 } 函數(shù)聲明 函數(shù)定義 函數(shù)調(diào)用 ? “聲明 ” (declaration)——作用是把 函數(shù)名 、函數(shù)參數(shù)的個(gè)數(shù) 和 參數(shù)的類型 等信息通知編譯系統(tǒng),以便在遇到函數(shù)調(diào)用時(shí),編譯系統(tǒng)能夠正確識(shí)別并檢查調(diào)用是否合法。 void print(int n)。 ? 在函數(shù)聲明中也可以不寫形參名,而只寫形參的類型。 ? 編譯系統(tǒng)只檢查參數(shù)個(gè)數(shù)和參數(shù)類型,而不檢查參數(shù)名。 ? 函數(shù)聲明 ——函數(shù)原型 (function prototype) 函數(shù)聲明 函數(shù)定義 函數(shù)調(diào)用 ? “定義 ” (defination)——是指對(duì)函數(shù)功能的確立,包括指定 函數(shù)名 、 函數(shù)值類型 、 形參名稱 及其 類型 、 函數(shù)體 等。 ? 它是一個(gè)完整的、獨(dú)立的函數(shù)單位。 void print(int n) { int i。 for(i=1。i=n。i++) printf(*)。 printf(\n)。 } 形參名不能省略 ? 函數(shù)定義與函數(shù)聲明的區(qū)別 ? 如果被調(diào)用函數(shù)的定義出現(xiàn)在主調(diào)函數(shù)之前,可以不必加以聲明。 ? 如果已在文件的開頭(在所有文件之前),已對(duì)本文件所調(diào)用的函數(shù)進(jìn)行了聲明,則在各函數(shù)不必對(duì)其所調(diào)用的函數(shù)再作聲明 函數(shù)聲明 函數(shù)定義 函數(shù)調(diào)用 ? “調(diào)用 ” (Call)——是指在主調(diào)函數(shù)中調(diào)用被調(diào)函數(shù)的過程 ? 函數(shù)名 (實(shí)參列表 )。 ? 如果被調(diào)用的是無參函數(shù),則“實(shí)參表列”可以沒有,但是括號(hào)不能省略。 ? 如果實(shí)參表列包含多個(gè)實(shí)參,則各參數(shù)之間用逗號(hào)隔開 ? 實(shí)參與形參的個(gè)數(shù)應(yīng)相等,類型應(yīng)匹配, ? 實(shí)參與形參按照順對(duì)應(yīng),一一傳遞數(shù)據(jù) ? 首先被調(diào)用的函數(shù)必須是已經(jīng)存在的函數(shù)(是庫函數(shù)或用戶自己定義的函數(shù)) ? 如果使用庫函數(shù),還應(yīng)該在本文件開頭用” include”命令將調(diào)用有關(guān)庫函數(shù)時(shí)所需用到的信息“包含”到本文件中來。 ? 如果使用用戶自己定義的函數(shù),而該函數(shù)的位置在調(diào)用它的函數(shù)的后面,應(yīng)該在主調(diào)函數(shù)中對(duì)被調(diào)函數(shù)作聲明。 函數(shù)的參數(shù)分為 形參 和 實(shí)參 兩種 ? 形參 (形式參數(shù) ):在 函數(shù)定義時(shí) 函數(shù)名后面括弧中的若干變量 ? 實(shí)參 (實(shí)在參數(shù) ):在 調(diào)用函數(shù)時(shí) ,函數(shù)名后面括弧中的若干變量或表達(dá)式。 形參與實(shí)參的功能是完成數(shù)據(jù)的傳遞 例 2 調(diào)用函數(shù)時(shí)的數(shù)據(jù)傳遞 include void main() { int max(int a,int b)。 int x,y,z。 printf(input two numbers:\n)。 scanf(%d%d,amp。x,amp。y)。 z=max(x,y)。 printf(maxmum=%d\n,z)。 } int max(int a,int b) { return(ab?a:b)。 } 函數(shù)聲明 函數(shù)調(diào)用 函數(shù)定義 z=max(x,y)。 (main函數(shù) ) int max(int a,int b)(max函數(shù) ) { return(ab?a:b)。 } 例 3 查找 3個(gè)數(shù)里面的最大值 include void main() { int max(int a,int b)。 int a,b,c,z。 printf(input three numbers:\n)。 scanf(%d%d%d,amp。a,amp。b,amp。c)。 z=max(a,b)。 z=max(z,c)。 printf(maxmum=%d\n,z)。 } int max(int a,int b) { return(ab?a:b)。 } 一個(gè)函數(shù)可以多次調(diào)用 改寫函數(shù),一次性的輸出三個(gè)數(shù)中的最大值 ? 實(shí)參可以是常量、變量或者表達(dá)式。但是要求它們有 確定的值 。在調(diào)用的時(shí)候?qū)?shí)參的值賦給形參。 ? 在函數(shù)聲明和函數(shù)定義時(shí), 必須指定形參的類型 ? 實(shí)參與形參的 個(gè)數(shù)應(yīng)相等,類型應(yīng)匹配 。 ? 實(shí)參與形參按順序?qū)?yīng),一一傳遞數(shù)據(jù)。 函數(shù)的值: 指函數(shù)被調(diào)用之后,執(zhí)行函數(shù)體中的程序段所取得的并返回給主調(diào)函數(shù)的值。 例如, 調(diào)用 max(x,y)得到 x與 y中較大數(shù) 說明: ( 1)函數(shù)的值只能通過 return語句返回主調(diào)函數(shù)。 return語句的一般形式為: return 表達(dá)式; 或者為: return (表達(dá)式 ); 注意:每次調(diào)用只能有一個(gè) return 語句被執(zhí)行,因此只返回一個(gè)函數(shù)值。 int max(int a,int b) { if(ab) return a。 else return b。 } ( 2) 在 定義 函數(shù)時(shí)指定函數(shù)值的類型。 函數(shù)的值: 指函數(shù)被調(diào)用之后,執(zhí)行函數(shù)體中的程序段所取得的并返回給主調(diào)函數(shù)的值。 例如,調(diào)用 sin(x)便得到 x的正弦值 調(diào)用 max(x,y)得到 x與 y中較大數(shù) 如: int max(int x,int y) char letter(char c1,char c2) ( 3)函數(shù)值的類型和函數(shù)定義中函數(shù)的類型應(yīng)保持一致。 如果兩者不一致,則以 函數(shù)類型 為準(zhǔn),自動(dòng)進(jìn)行類型轉(zhuǎn)換。 函數(shù)的值: 指函數(shù)被調(diào)用之后,執(zhí)行函數(shù)體中的程序段所取得的并返回給主調(diào)函數(shù)的值。 例如,調(diào)用 sin(x)便得到 x的正弦值 調(diào)用 max(x,y)得到 x與 y中較大數(shù) float max(int x,int y) { int z。 z=xy?x:y。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1