C語言程序設(shè)計教案_第1頁
C語言程序設(shè)計教案_第2頁
C語言程序設(shè)計教案_第3頁
C語言程序設(shè)計教案_第4頁
C語言程序設(shè)計教案_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

C語言程序設(shè)計教案C語言程序設(shè)計教案全文共14頁,當前為第1頁。《C語言程序設(shè)計》教案C語言程序設(shè)計教案全文共14頁,當前為第1頁。第一章C語言概述第一講C語言概述學時:2學時授課形式:多媒體講解+示例程序演示授課內(nèi)容:C語言概述教學目的和要求: 1、了解C歷史、名稱來源、C特點2、掌握C基本語法成分3、掌握C程序基本結(jié)構(gòu)4、了解C程序上機步驟教學重點和難點: 1、C語言語法成分(標識符、注釋)2、C程序基本結(jié)構(gòu)(由函數(shù)組成、main主函數(shù))教學過程:導入語言:人-人語言交流;聾啞人-手勢語;人機-計算機語言C語言是一種流行的計算機高級語言,C語言適合于編寫系統(tǒng)軟件,也可以編寫應(yīng)用程序。講授一、語言出現(xiàn)的歷史背景(1)C語言的發(fā)展源于人們希望用高級語言編寫操作系統(tǒng)。語言既具有高級語言特性,又具有低級語言特性-中級語言。二、C語言的特點(理解為主)C語言程序設(shè)計教案全文共14頁,當前為第2頁。簡單緊湊、靈活方便。C語言共有32個關(guān)鍵字、9種控制語句,程序書寫格式靈活。C語言程序設(shè)計教案全文共14頁,當前為第2頁。運算符豐富。C語言包括34個運算符,運算類型極其豐富,表達式類型多樣化。數(shù)據(jù)類型豐富。有整型、實型、字符型、數(shù)組類型等等,可以實現(xiàn)復雜數(shù)據(jù)類型的運算,使得程序運行效率更高。C語言是結(jié)構(gòu)化語言。其顯著特點是代碼與數(shù)據(jù)分離,便于使用、維護以及調(diào)試。語法限制較少、程序設(shè)計自由度較大。C語言允許直接訪問物理地址,如對“為”、“字節(jié)”和“地址”進行操作。C語言程序生成代碼質(zhì)量高,程序執(zhí)行效率高。C語言使用范圍廣,可移植性好。三、C語言基本語法成分(重點:標識符,注釋)C語言字符集。字母、數(shù)字、特殊字符。標識符(名字),C語言標識符定義規(guī)則及注意事項。關(guān)鍵詞(保留字)。共32個關(guān)鍵字。運算符。共34個運算符,包括算數(shù)運算、邏輯運算、關(guān)系運算、賦值運算符等。分隔符:逗號,空格。起分隔、間隔作用。注釋符。/*...*/,編譯時編譯系統(tǒng)忽略注釋。四、C程序結(jié)構(gòu)(2個C程序引入C程序結(jié)構(gòu))例1.1#include<studio.h>main(){C語言程序設(shè)計教案全文共14頁,當前為第3頁。 ptintf(“Hello,World!”);C語言程序設(shè)計教案全文共14頁,當前為第3頁。 getch(); /*按任意鍵結(jié)束*/}例1.2intsum(intx,inty){ intz; z=x+y; returnz;}main(){ inta,b,c; scanf(“%d,%d”,&a,&b); /*輸入兩個整數(shù)*/ c=sum(a,b);/*計算兩個整數(shù)之和*/ printf(“sum=%d\n”,c); /*輸出結(jié)果*/ getch();}C程序結(jié)構(gòu)特點小結(jié):(1)一個C程序可以由多個函數(shù)構(gòu)成,但是只能有一個main函數(shù),程序從main函數(shù)開始,然后通過函數(shù)調(diào)用完成部分功能,最后以main函數(shù)結(jié)束;(2)主函數(shù)或子函數(shù)的函數(shù)體必須用一對{}括起來,函數(shù)體中主要是程序的功能語句,這種功能語句由兩部分組成:聲明部分和執(zhí)行部分;(3)每一條語句由分號結(jié)束,程序書寫格式自由,一行可以寫多句,一句可以寫多行,但分行時注意不能將字符串整體分開;(4)C語言大小寫敏感,大小寫不能混用;一般程序語句用小寫字母,符號常量用大寫;程序要有適當?shù)淖⑨屨Z句,提高程序的可讀性,注意注釋語句不能嵌套;C語言程序設(shè)計教案全文共14頁,當前為第4頁。(5)C語言中的變量必須先定義后使用;C語言程序設(shè)計教案全文共14頁,當前為第4頁。(6)#include是預處理命令,用于將<>或””中包括的文件中的內(nèi)容讀到命令所在處;每個include的后面只能跟一個文件,如果想將多個文件包含到指定位置,可以通過多個include實現(xiàn)。五、優(yōu)秀的程序員應(yīng)具備的基本素質(zhì)(1)具有良好的編程習慣(2)使用TAB縮進(3){}對齊(4)有足夠的注釋(5)有合適的空行六、C程序的實現(xiàn)源程序、目標程序、可執(zhí)行程序的概念(補充)C語言程序的實現(xiàn):編輯、編譯、連接、運行。七、機房演示及學生操作小結(jié)、作業(yè)布置課后反思總結(jié):

C語言程序設(shè)計教案全文共14頁,當前為第5頁。第二講算法(知識擴充部分)C語言程序設(shè)計教案全文共14頁,當前為第5頁。學時:2學時授課形式:板書+多媒體講解授課內(nèi)容:算法的概念及表示教學目的和要求:1、掌握算法的概念2、學習算法的表示方法中的流程圖法教學重點和難點:重點:1、算法的概念、算法的特性、設(shè)計算法的意義2、算法的表示方法難點:算法的表示方法教學過程:導入請同學們寫出從1+2+3+…+100的計算方法。方法1:從1一直加到100方法2:首尾相加,再相乘的方式講授:一、算法的概念解決一個數(shù)值計算問題或者非數(shù)值運算問題時,所采用的方法不同,就會有不同的解題過程(解題步驟),這些解決問題的步驟就稱作一個個算法。二、算法與程序的關(guān)系程序=數(shù)據(jù)結(jié)構(gòu)+算法;數(shù)據(jù)結(jié)構(gòu)——對數(shù)據(jù)的描述;算法——對操作的描述。C語言程序設(shè)計教案全文共14頁,當前為第6頁。算法舉例:(一個問題采用不同的解題思路)C語言程序設(shè)計教案全文共14頁,當前為第6頁。問題:將隨機輸入的若干個數(shù)升序排列輸出。解題:(冒泡算法)算法:a.比較第一個數(shù)與第二個數(shù),若為逆序,則交換;然后比較第二個數(shù)與第三個數(shù);依次類推,直至第n-1的個數(shù)與第n個數(shù)比較為止。則第一輪排序結(jié)束后,最大的數(shù)被移動到最后。b.對前n-1個數(shù)進行第二輪排序,方法如a,則排序結(jié)束后,使得次大的數(shù)被移動到n-1的位置。c.重復步驟b,則經(jīng)過n-1輪排序后,排序結(jié)束,所有的數(shù)按照升序排列。(選擇算法)算法:a.首先通過n-1次比較,從n個數(shù)中找出最小的,將它與第一個數(shù)交換,第一輪選擇排序后,結(jié)果最小的數(shù)被安置在第一個元素位置上。b.再通過n-2次比較,第二輪選擇排序后,從剩余的n-1個數(shù)中找出次小的一個數(shù),將它與第二個數(shù)交換位置。c.重復上述過程,共經(jīng)過n-1輪排序后,排序結(jié)束,所有數(shù)按照升序排列。三、算法的描述(重點:流程圖法)每一個算法都有多種方式描述,例如上面的例子,采用的是自然語言表示法,還有另外一種常用的描述方式——流程圖表示法。流程圖的基本符號及含義:C語言程序設(shè)計教案全文共14頁,當前為第7頁。C語言程序設(shè)計教案全文共14頁,當前為第7頁。算法的描述方式示例:1、問題:計算1*2*3*4*5。自然語言表示法:a.繁瑣的算法:將第二個數(shù)與第一個數(shù)相乘,得到的積與第三個數(shù)相乘,依此方法一直乘到5。當要進行連乘的數(shù)比較多時,這種方法顯然不適用。b.改進的算法:開辟兩個空間p和i,一個放計算之后的積,一個放被乘數(shù),上面的算法進行改造后如下:(S1表示第一步,S2表示第二步,依此類推)S1:1=>p,2=>iS2:計算p*i的積,結(jié)果仍然放在p中,即p*i=>pS3:i的值增1,即i+1=>iS4:如果i沒有超過5,則繼續(xù)執(zhí)行S2、S3、S5,否則,算法結(jié)束,p中的數(shù)據(jù)就是連乘積。流程圖表示法:C語言程序設(shè)計教案全文共14頁,當前為第8頁。C語言程序設(shè)計教案全文共14頁,當前為第8頁。2、問題:有50個學生,輸出80分以上的學生學號和成績。為了表示方便,用n表示學生學號,ni表示第i個學生學號,用g表示學生成績,gi表示第i個學生成績,則算法如下:自然語言表示法:S1:1=>iS2:如果gi>80,則輸出ni和gi,否則不輸出;S3:i+1=>IS4:如果i<=50,返回到S2,繼續(xù)執(zhí)行S2、S3、S4;否則,算法結(jié)束。流程圖表示法:C語言程序設(shè)計教案全文共14頁,當前為第9頁。C語言程序設(shè)計教案全文共14頁,當前為第9頁。四、小結(jié)及作業(yè)小結(jié):流程圖表示法是算法描述的常用方法,它較自然語言表示法具有直觀形象、易于理解,且避免了自然語言表示有歧義的優(yōu)勢。作業(yè):1、計算1+3+5+7+9的和,用流程圖表示此算法。2、有50個學生,找出50個學生中分數(shù)為90的學生學號。用流程圖表示此算法。課后反思總結(jié):

C語言程序設(shè)計教案全文共14頁,當前為第10頁。第三講算法的描述C語言程序設(shè)計教案全文共14頁,當前為第10頁。學時:2學時授課形式:板書+多媒體講解授課內(nèi)容:算法的流程圖表示法的基本結(jié)構(gòu)教學目的和要求:1、掌握流程圖的幾種基本結(jié)構(gòu),順序、選擇和循環(huán)結(jié)構(gòu)。2、會使用流程圖進行算法設(shè)計教學重點和難點: 1、流程圖的幾種基本結(jié)構(gòu)的表示 2、使用流程圖表示算法教學過程:一、上節(jié)知識回顧上節(jié)的兩個示例分別是順序結(jié)構(gòu)和循環(huán)結(jié)構(gòu)的流程圖,在算法描述中共有三種基本結(jié)構(gòu),分別為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),其流程圖表示如下:C語言程序設(shè)計教案全文共14頁,當前為第11頁。C語言程序設(shè)計教案全文共14頁,當前為第11頁。二、算法設(shè)計舉例1、問題:判斷某一年份是否是閏年判斷某一年份是閏年的條件是:a.能被4整除,但是不能被100整除,則這一年份是閏年;b.能被100整除,又能被400整除的,則這一年份是閏年;其他的年份都不是閏年,假設(shè)用一個空間y來存放被校驗的年份,則算法描述如下:自然語言表示法:S1:輸入年份=>yS2:若y能被4整除,但不能被100整除,則輸出y是閏年,算法結(jié)束;否則,執(zhí)行S3;S3:若y能被100整除,也能被400整除,則輸出y是閏年,算法結(jié)束;否則,執(zhí)行S4;S4:輸出y不是閏年,算法結(jié)束。流程圖表示法:C語言程序設(shè)計教案全文共14頁,當前為第12頁。C語言程序設(shè)計教案全文共14頁,當前為第12頁。2、問題:判斷一個大于3的數(shù)是不是素數(shù)一個數(shù)是不是素數(shù)主要看它除了1和它本身之外不能被其他任何整數(shù)整除,則它是素數(shù),否則就不是素數(shù),首先需要開辟一個空間n存放待判斷的數(shù),其次開辟一個除數(shù)的空間i(i從2開始),利用n除以這個i,看能否整除,具體算法如下:自然語言表示法:S1:輸入待判斷的數(shù)=>nS2:2=>iS4:n除以i,得余數(shù)rS5:如果r不為0,則i+1=>i,否則,輸出n不是素數(shù),算法結(jié)束S6:如果i<n,則返回S4,否則,輸出n是素數(shù),算法結(jié)束。C語言程序設(shè)計教案全文共14頁,當前為第13頁??紤]是否非要做到i=n-1,是不是可以做到i<=sqrt(n)。C語言程序設(shè)計教案全文共14頁,當前為第13頁。流程圖表示法:三、三種結(jié)構(gòu)的流程圖特點總結(jié)通過上面幾個例子,我們可以看到,算法在執(zhí)行的過程中基本只有三種模式:a.從上到下依次執(zhí)行下來,中間沒有任何分叉;C語言程序設(shè)計教案全文共14頁,當前為第14頁。b.在執(zhí)行過程中,根據(jù)條件成立與否產(chǎn)生了不同的操作;C語言程序設(shè)計教案全文共14頁,當前為第14頁。c.當某一條件成立時,反復做相同的操作。這就是我們結(jié)構(gòu)化程序設(shè)計的三種基本流控結(jié)構(gòu):順序、分支和循環(huán)。繪制流程圖應(yīng)該注意的事項:一個流程圖只有一個入口點和出口點;主要畫出問題的邏輯處理過程,無

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論