C語言教案168課時_第1頁
C語言教案168課時_第2頁
C語言教案168課時_第3頁
C語言教案168課時_第4頁
C語言教案168課時_第5頁
已閱讀5頁,還剩124頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C語言程序設計授課教師:胡 琪 授課教師:09計1班教學計劃一、學生基本情況09計1班,22人,是對口高考班,由于是剛進高一,還沒有接觸過任何的編程知識,甚至有些學生以前接觸電腦的機會比較少,基礎較差,但整體上還是很好學的,畢竟深知C語言是參加對口高考很重要的一門科目。二、教學要求1.掌握C語言的主要特點、結構、程序編寫的規(guī)則、開發(fā)的過程;2.掌握C語言的基本數(shù)據(jù)類型、運算符、表達式的應用,常用函數(shù)的使用;掌握順序程序設計,會編寫簡單的程序;3.掌握三種if語句的使用形式、流程、功能;學會使用switch語句;4.掌握循環(huán)結構程序設計的方法,包含三種不同循環(huán)結構的應用方法以及這三種循環(huán)的異同點

2、。三、教學重點1.C語言基本數(shù)據(jù)類型、運算符、表達式的應用;2.常用函數(shù)的使用;3.順序結構、選擇結構、循環(huán)結構的程序設計方法。四、教學難點1.C語言程序的編寫規(guī)則、開發(fā)過程;2.順序結構、選擇結構、循環(huán)結構的程序設計方法及退出循環(huán)的方法。五、主要教學方法、措施1.按照學生的認識規(guī)律,以程序設計為主線,采用循序漸進的方式,用通俗易懂的語言結合生活中的實例講解C語言的基礎知識、程序設計方法;2.結合實驗法精心安排實驗,采用任務驅動式的方法即從學生實際水平出發(fā)布置難度適當?shù)娜蝿找龑W生完成并驅動學生學習新的知識;3.加強課后輔導,要求學生按時完成作業(yè),及時認真批改作業(yè),發(fā)現(xiàn)問題及時糾正。六、教學進

3、度教 學 進 度 安 排周 次主 要 教 學 內(nèi) 容1C語言基礎2C語言的數(shù)據(jù)類型3基本輸入輸出函數(shù)4算術運算符、表達式5關系運算符、表達式6順序結構程序設計7邏輯運算符、表達式8單分支選擇結構程序設計(1)9單分支選擇結構程序設計(2)10期中考試與復習11多分支選擇結構程序設計(1)12多分支選擇結構程序設計(2)13多分支選擇結構程序設計(3)14循環(huán)結構程序設計(1)15循環(huán)結構程序設計(2)16程序填空題訓練(1)17程序填空題訓練(2)18編程題訓練(1)19編程題訓練(2)20期末考試實訓計劃一、實訓目標從應用和實踐的角度出發(fā),使學生通過上機操作掌握本課程的程序設計思想,達到能獨

4、立編寫C語言應用程序的要求,為提高學生的實際編程能力,進一步學習其他程序設計語言打下基礎。二、教材內(nèi)容分析本教材以TurboC 2.0為運行環(huán)境講解C語言程序運行開發(fā)過程,要求學生掌握基本操作,通過上機檢驗程序運行結果,從而掌握程序設計的思想與方法。三、具體專業(yè)技能要求1.學會編輯、運行簡單的C語言程序;2.掌握定義數(shù)據(jù)類型的方法及賦值的方法,學會使用包含運算符的表達式,掌握輸入輸出函數(shù)的使用;3.掌握順序結構、選擇結構、循環(huán)結構的程序設計方法。四、技能教學主要措施1.精選實驗內(nèi)容,要求學生獨立完成程序編寫;2.學生上機編輯和調(diào)試程序,引導學生多方位地考慮問題;3.對基礎薄弱的學生進行指導,對

5、能提前完成實驗任務的學生提出更高的要求;4.要求學生將自己的實驗情況進行分析、總結,整理出實驗報告。五、教學進度安排教 學 進 度 安 排周 次主 要 教 學 內(nèi) 容1熟悉C語言運行環(huán)境2編輯、調(diào)試、運行簡單的C語言程序3基本輸入輸出函數(shù)4算術運算符、表達式5關系運算符、表達式6順序結構程序設計7邏輯運算符、表達式8單分支選擇結構程序設計(1)9單分支選擇結構程序設計(2)10期中考試與復習11多分支選擇結構程序設計(1)12多分支選擇結構程序設計(2)13循環(huán)結構程序設計(1)14循環(huán)結構程序設計(2)15程序填空題訓練(1)16程序填空題訓練(2)17編程題訓練(1)18編程題訓練(2)1

6、9編程題訓練(3)20期末考試第12課時教學課題:C語言基礎教學目的:1.讓學生明確C語言在程序設計語言發(fā)展中的地位和學習這門課的目的;2.了解簡單C程序的特點和結構;3.熟練掌握創(chuàng)建、修改、運行C程序的操作方法,為學生進一步的學習打下基礎。教學重點和難點:1.簡單C程序的特點和基本結構;2.創(chuàng)建、修改、運行C程序的操作步驟和方法。教學方法:講授法、任務驅動式課時:2課時第一課時教學過程:l 提出疑問,啟發(fā)學生思考:人與人之間用語言來交流,那么人與計算機交流用什么呢?C語言就發(fā)揮了作用,從而導入新課。1.程序設計語言經(jīng)歷的發(fā)展階段2.C語言在發(fā)展階段(過程)中所處的地位3.C語言的特點l 在了

7、解了C語言的發(fā)展后,著重講解C程序的基本結構和書寫格式:庫函數(shù)根據(jù)用戶需要編制的函數(shù)1.C程序由函數(shù)構成,一個C程序至少一個main函數(shù)或一個main函數(shù)和若干個其他函數(shù)。被調(diào)用的函數(shù)2.一個函數(shù)由兩部分組成。函數(shù)的首部。如:int min(int x,int y)聲明部分執(zhí)行部分函數(shù)體3.一個C程序總是從main函數(shù)開始執(zhí)行。4.C程序書寫格式自由。5.每個語句和數(shù)據(jù)定義的最后必須有一個分號。如:c=a+b;6.C語言本身沒有輸入輸出語句,輸入輸出的操作是由庫函數(shù)scanf和printf函數(shù)來完成的。7.可以用/* */對C程序中的任何部分做注釋。l 接下來給出一個實例結合上述結構講解:例:

8、main()int a,b,c;scanf(“%d %d”,&a,&b);c=max(a,b);printf(“max=%d”,c);int max(int x,int y)int z;if(x>y)z=x;else z=y;return(z);請學生上講臺指出函數(shù)的各個組成部分,其他學生補充。第二課時教學過程:l 講授新課一、TurboC的與退出(要求學生以自學為主)1.啟動TurboC的步驟開機啟動DOS操作系統(tǒng)啟動中文操作系統(tǒng)進入工作目錄,執(zhí)行命令:CD C:、XXC啟動TurboC系統(tǒng)2. TurboC界面上的菜單命令簡介(功能和快捷鍵)3.退出前保存的方法二、創(chuàng)

9、建和運行C程序的一般步驟1.創(chuàng)建新文件2.輸入源程序3.保存源程序4.運行程序5.觀察程序運行結果生成源文件 (生成*.c文件)編輯源程序編譯源文件生成目標文件夾 (生成*.obj文件)連接目標文件、庫文件生成可執(zhí)行文件夾 (生成*.exe文件)運行可執(zhí)行文件產(chǎn)生運行結果三、C語言程序的開發(fā)過程l 回顧本節(jié)課知識點,總結歸納l 布置作業(yè)1.C語言程序的基本構成2.C程序的開發(fā)過程3.輸出如下信息(編程實現(xiàn))* * * * * * * * * Very good* * * * * * * * * 第3課時實驗課題:啟動與退出TurboC,熟悉TurboC環(huán)境實驗目的:1.掌握啟動與退出Turbo

10、C編譯系統(tǒng)的方法; 2.熟悉TurboC運行環(huán)境。實驗時間:第一周實驗內(nèi)容:1.啟動TurboC雙擊TC.exe文件即可進入TurboC編譯系統(tǒng)2. TurboC基本界面認識 菜單項1) 名稱2) 功能3) 可用的快捷鍵 編輯界面行、列、默認文件名程序編輯區(qū)信息欄 出錯處、出錯原因3.退出TurboC (Alt+X)l 實驗小結:由于學生第一次上機,接觸到TurboC運行環(huán)境,整個實驗采用多媒體控制教學結合學生實驗同時進行,效果較好。第4課時實驗課題:創(chuàng)建并運行C語言程序實驗目的:1.掌握啟動與退出TurboC編譯系統(tǒng)的方法; 2.使用TurboC創(chuàng)建與運行簡單C程序的方法。實驗時間:第一周實

11、驗內(nèi)容:1.啟動TurboC2.創(chuàng)建新文件3.輸入源程序,保存main()printf(“This is a program!”);4.編譯、連接程序生成目標文件生成可執(zhí)行文件連接可執(zhí)行文件5.運行程序6.觀察結果l 實驗小結:絕大多數(shù)學生在經(jīng)過不同程序的指導后,能如質(zhì)如量地完成實驗。第5課時實驗課題:TurboC常用編輯鍵的用法實驗目的:掌握TurboC常用編輯鍵的功能和使用用法實驗時間:第一周實驗內(nèi)容:1.打開上次實驗課保存的程序2.練習使用End鍵和Home鍵End光標回到本行行末Home光標回到本行行首3.編輯程序,將“(”按Del鍵刪除,觀察出錯信息mainprintf(“你好”);

12、4.按F6(或Alt+E或Enter鍵)返回編輯窗口,修改程序,讓學生注意觀察系統(tǒng)約定的對齊方式5.改錯,保存程序l 實驗小結:這個實驗相對難度不大,學生完成情況較好。第6課時實驗課題:理解C程序規(guī)則實驗目的:1.理解使用規(guī)范書寫程序的優(yōu)越性2.理解C程序規(guī)則實驗時間:第一周實驗內(nèi)容:1.(1)輸入以下程序mainprintf(“努力學習”);(2)運行程序,觀察系統(tǒng)顯示的出錯信息(3)找出出錯原因后,修改程序(4)再次運行,直到得出正確結果2.運行以下程序main()printf(“欲窮千里目”)觀察出錯信息再按照第1題的方式修改程序要求學生填下面的空:(1)運行該程序,系統(tǒng)顯示的出錯信息是

13、:_(2)該程序出錯的原因是:_3.變量定義與使用規(guī)則(1)main()Int a=5;printf(“5的平方是:%d”,a*a);運行程序,系統(tǒng)顯示的出錯信息_該程序的出錯原因是_修改程序再次運行,直到得出正確結果(2)main()a=5;printf(“5的平方是:%d”,a*a);修改運行得出正確結果l 實驗小結:學生做起來感到吃力,在上機方面要加強練習第78課時教學課題:常量和變量教學目的:讓學生熟悉并掌握常量、變量的定義、賦值等操作教學重點和難點:常量和變量課時:兩節(jié)課第一課時:教學內(nèi)容:l 新課的引入l 新課的講解1. 數(shù)據(jù)類型C語言提供的數(shù)據(jù)結構,是以數(shù)據(jù)類型形式出現(xiàn)的,具體分

14、類:1)基本類型分為整型、實型(又稱浮點型)、字符型、寄存器型四種2)構造類型分為數(shù)組類型、結構類型、共用(枚舉)類型3)指針類型4)空類型C語言中的數(shù)據(jù),有常量和變量之分。2. 常量1)常量的概念在程序運行過程中,其值不能被改變的量稱為常量2)常量的分類(1)整型常量即整常數(shù),在C語言中可用三種形式表示:十進制 例:10.36八進制 例:012 (以數(shù)字0開頭)十六進制 例:0x36 (以數(shù)字0+小寫字母x開頭)(2)實型常量 例:2.03、0.0、m*10n(3)字符常量 例:A、a、0、1(4)符號常量 例:#define PI 3.1415(5)字符串常量 例:”x”、”I am a

15、srudent”常量的類型,可通過書寫形式來差別第二課時3. 變量(1)變量的概念(2)變量的兩個要素:變量名(變量必須有一個名字,命名遵循標識符命名規(guī)則)變量值4. 變量的定義與初始化在C語言中,要求對所有用到的變量,都必須先定義,后使用;且稱在定義變量的同時進行賦初值的操作稱為初始化。(1)變量定義的一般格式數(shù)據(jù)類型 變量名 如:float area;(2)變量初始化的一般格式數(shù)據(jù)類型 變量名=初值 例:float length=2.5;下面介紹基本類型中的整型、實型和字符型三種變量的定義5. 整型變量定義根據(jù)占用內(nèi)存字節(jié)數(shù)的不同,整型變量又分為類:基本類型(類型關鍵字為int)短整型(類

16、型關鍵字為shortint)長整型(類型關鍵字為longint)無符號整型數(shù) 無符號基本整型(unsigned int)無符號短整型(unsigned short)無符號長整型(unsigned long)(2)占用內(nèi)存字節(jié)數(shù)與值域(見書60頁)注意點:長整型數(shù)(315l)(3)類型匹配規(guī)則一個整型常量,可以賦給能容納下其值的整型變量。例:其值在-215(215-1)的整型常量,可以賦給int型變量和long int 型變量;其值在231(231-1)的整型常量,就只能賦給long int型變量。例:main()int a=20000,b=30000,c;c=a+b;printf(“c=%dn

17、”,c);運行結果為:c=-15536因為變量c的類型是int型,它所能存放的最大數(shù)是32767,而a和b的和50000超出了這個范圍,運行結果自然就出錯了。6. 實型變量C語言的實型變量,分為兩種:(1)單精度型(2)雙精度型(1)單精度型:關鍵字為float,一般占4字節(jié)(32位),提供7位有效數(shù)字。(2)雙精度型:double,一般占8字節(jié),提供1516位有效數(shù)字。7. 實型常量(1)表示形式實型常量即實數(shù),在C語言中又稱為浮點數(shù),其值有兩種表達形式:十進制形式 例如:3.14、9.8指數(shù)形式<尾數(shù)>E(e)<整型指數(shù)> 例:3.0E+5(2)關于類型實型常量不分

18、float型和double型,一個實型常量可以賦給實型變量(float型或double型)l 教學小結:(1)C語言的基本數(shù)據(jù)類型:char、int、long、float、double;(2)char為字符型,表示一個字節(jié)的字符,實質(zhì)是稱為ASCII碼的八位二進制;(3)int long 表示的是整型數(shù),值的范圍不同,int型占兩字節(jié);long 占四個字節(jié);(4)float 、double是浮點數(shù),float占4個字節(jié),精度為7位;double占8個字節(jié),精度為15位。l 課堂練習#include<stdio.h>main()char c1=B;int x=10;c1=c1+x;p

19、rintf(“%c,%dn”,c1,x);l 布置作業(yè)1. C語言的基本數(shù)據(jù)類型有哪些?2. 說出int、long型變量其值的取值范圍及存儲空間的大小。3. 變量定義的形式,舉例說明。第9課時實驗題目:理解C程序規(guī)則實驗目的:1.通過改正程序中的錯誤,加深對C程序基本規(guī)則的理解2.掌握保存文件和編輯下一個程序的操作方法實驗時間:第二周實驗地點:科教樓實驗內(nèi)容:1.改正程序中的錯誤main()a=3;printf(“3的平方是:%d”,a*a);(1)運行程序,觀察系統(tǒng)顯示的出錯信息(2)找出出錯原因后,修改程序(3)再次運行,直到得出正確結果2. 更正以下程序main()a=3;printf(

20、“3的平方是:%d”,A*A);找出出錯原因并改正,保存程序,編輯下一個程序。3. 更正以下程序 main()Int a=5;printf(“5的平方是:%d”,A*A);找出出錯原因并改正,保存程序,編輯下一個程序。第10課時實驗題目:printf函數(shù)的使用實驗目的:掌握printf函數(shù)的使用方法實驗時間:第二周實驗地點:科教樓實驗內(nèi)容:1.建立并運行以下程序,注意觀察屏幕顯示信息main()float x=2.6;clrscr();printf(“x=%f”,x);2. 建立并運行以下程序,注意觀察結果main()int x,y; clrscr();x=y=1;printf(“x=%d,y

21、=%dn”,x,y);l 實驗總結:C程序規(guī)則關系著(決定著)能否學好C語言,printf函數(shù)使用非常頻繁,引導學生入門顯得舉足輕重。第1112課時教學課題:常量和變量(2)教學目的:通過學習,使學生熟練掌握C語言的量教學重點:字符常量和字符變量教學方法:講解法課時安排:兩課時課型:理論課教學過程:第一課時l 復習:1.C語言的數(shù)據(jù)類型2.整型、實型常量、變量l 新課的講解:1.字符常量字符常量的定義用一對單引號括起來的單個字符,如:A、+等轉義字符C語言中還允許使用一種特殊形式的字符常量,就是以“開頭的轉義字符。注意:表示, 表示例1:用打印字符輸出可打印字符和不可打印字符main()pri

22、ntf(“x4Fx4BX21n”);printf(“x15 xABn”);程序輸出結果:OK! § 1/2例2:設一個輸出區(qū)占8列,分析輸出結果main()printf(“ ab ct derftgn”);printf(“htibbj k”);分析過程如下,加粗的為最后顯示的結果abcdefgdehjihjk12345678123456782.字符變量類型關鍵字為char,一般占用1字節(jié)內(nèi)存單元變量值的存儲字符變量用來存儲字符常量,將一個字符常量存儲到一個字符變量中,實際上是將該字符的ASCII碼值(無符號整數(shù))存儲到內(nèi)存單元中。例:char ch1,ch2; /*定義兩個字符變量:

23、ch1,ch2*/ch1=a;ch2=b; /*給字符變量賦值*/第二課時特性(1)C語言允許字符型數(shù)據(jù)與整型數(shù)據(jù)之間通用例2 字符變量的字符形式輸出和整數(shù)形式出發(fā)main()char ch1,ch2;ch1=a;ch2=b;printf(“ch1=%c,ch2=%cn”,ch1,ch2);printf(“ch1=%d,ch2=%dn”,ch1,ch2);(2)允許對字符數(shù)據(jù)進行算術運算,就是對它們的ASCII碼值進行算術運算例3 main()char ch1,ch2;ch1=a;ch2=B;printf(“ch1=%c,ch2=%cn”,ch1-32,ch2+32);printf(“ch1+

24、200=%d n”,ch1+200);printf(“ch1+200=%c n”,ch1+200);printf(“ch1+256=%d n”,ch1+256);3.字符串常量(1)概念(2)字符串長度 字符串中字符的個數(shù)稱為字符串長度,長度為0的字符串(即一個字符都沒有的字符串)稱為空串,表示為”。例:“How do you do”長度為14;”Good morning” 長度為13。如果反斜杠和雙引號作為字符串中的有效字符,則必須用轉義字符。例:(1) c:msdosv6.22 ” c:msdosv6.22” (2)I say:”Goodbye!” “I say:”Goodbye!”(3)

25、字符串的存儲存儲字符串常量時,系統(tǒng)在字符串的末尾自動加一個0作為字符串的結束標志例:“CHINA”在內(nèi)存中的實際存儲CHINA0占6字節(jié)而非5字節(jié)內(nèi)存空間l 課堂小結字符常量A與字符串常量”A”的區(qū)別(1)定界符不同 字符常量使用單引號,字符串常量用雙引號(2)長度不同 字符常量的長度固定為1 字符串常量的長度可以是0,也可以是某個整數(shù)(3)存儲要求不同l 布置作業(yè)1.字符常量與字符串常量的區(qū)別2.寫出下面程序運行的結果main()int a=1,b=2,sum;sum=a+b;printf(“sum=%dn”,sum);3.寫出下面語句的執(zhí)行結果(1)printf(“nABCtDEnFGHn

26、”);(2) printf(“nWhy is 21+31 equal to %d?n”,21+31);第13課時實驗題目:printf函數(shù)的使用(1)實驗目的:掌握printf函數(shù)的使用實驗地點:科教樓實驗時間:第三周實驗內(nèi)容:1.運行下面的程序main()int a=123;printf(“a=%d n”,a);printf(“a=%x n”,a);printf(“a=%o n”,a);printf(“a=%u n”,a);要求學生觀察屏幕顯示信息并了解各種輸出格式2.運行程序main()char a=”CHINA”;printf(“x=%s n”,a);讓學生了解字符串的定義l 實驗小結:

27、printf()函數(shù)在C語言中用得非常頻繁,必須要從嚴要求學生掌握。第14課時實驗題目:printf函數(shù)的使用(2)實驗目的:進一步掌握printf函數(shù)的使用實驗地點:科教樓實驗時間:第三周實驗內(nèi)容:1.運行下面的程序main()float a=123.456;printf(“a=%e n”,a);printf(“a=%f n”,a);printf(“a=%g n”,a); /*按e和f格式中較短的一種輸出不打印無效零*/ 輸出結果: 1.23456e+02 123.456001 123.456要求學生觀察屏幕顯示信息并了解各種輸出格式2.運行以下程序并得出結果main()float a=3.

28、1415926;printf(“x=%8.6f nb=%17.15f”,a,b);該程序測試用printf函數(shù)輸出帶小數(shù)的float和double型數(shù)據(jù)時,小數(shù)部分是截斷還是四舍五入。請學生根據(jù)程序運行結果,回答這個問題。第1516課時教學課題:基本輸入輸出函數(shù)(1)教學時間:第三周教學目的:掌握數(shù)據(jù)的輸入輸出教學重、難點:掌握數(shù)據(jù)的輸入輸出課時安排:2課時課型:理論課第一課時教學目的:要求學生掌握printf()函數(shù)教學過程:l 講授新課1.printf()函數(shù)A一般格式:printf(“格式字符串”,輸入表項);B功能:按指定的格式向計算機系統(tǒng)默認輸出設備輸出信息C說明:(1)格式字符串組

29、成以%開頭,以轉換字符為結尾的轉換說明符,必須與輸出參數(shù)相對應,表示相應的輸出參數(shù)的輸出格式空格、制表符,不作輸出轉義字符,以開頭轉義字符為結尾的 例:n輸出時產(chǎn)生“換行”操作普通字符除格式指示符和轉義字符之外的其它字符 普通字符原樣輸出格式指示符,一般形式如下:%標志寬度.精度FNhL類型(2)輸出項表:要輸出的變量符號輸出項表是可選的。如果要輸出的數(shù)據(jù)不止1個,相鄰2個之間用逗號分開。下面販printf()函數(shù)是合法的。printf(“I am a student.n”);printf(“%d”,3+2); printf(“a=%f b=%5dn”,a,a+3);Prinft修飾符修飾符格

30、式說明含義m%md以字段寬m輸出整型數(shù)據(jù),不足m位,左補空格0m%0md以字段寬m輸出整型數(shù)據(jù),不足m位,左補空0m.n%m.nf以字段寬m輸出實型小數(shù)數(shù),小數(shù)位為n位l 練習main()int x=123;float y=2.71828;printf(“x=%5dnx=%05dnx=%-5dnx=%2d n”,x,x,x,x);printf(“y=%7.2fny=%-7.2f n”,y,y);l 知識回顧l 教學小結: 輸出函數(shù)prinft()的使用第二課時教學課題:基本輸入輸出函數(shù)(2)教學時間:第三周教學目的:掌握輸入函數(shù)scanf()函數(shù)教學重、難點:輸入函數(shù)的使用課型:理論課l 回顧

31、printf()函數(shù)l 新課講授scanf()函數(shù)作用:按指定的格式,從鍵盤上接收輸入信息一般格式:scanf(“格式字符串”,輸入項首地址表);例:main()float radius,high,vol,pi=3.1415926;printf(“please input radius&high:”);scanf(“%f %f”,&radius,&high);vol=pi*radius*radius*high;printf(“radius=%7.2f,high=%7.2f,vol=%7.2fn”,radius,high,vol);分析程序說明:A、(1)格式字符串:轉換

32、說明符,空白字符和普通字符 (2)輸入項地址表 B、格式指示符 a。轉換說明符 b。寬度n m.nl 互動環(huán)節(jié):請學生寫出例題程序運行結果l 課堂小結:總結scanf()函數(shù)的使用l 布置作業(yè):從鍵盤上輸入一個數(shù)(圓的半徑),求半圓的周長及面積。l 教學小結:scanf()函數(shù)的使用,學生初學很容易將取地址符&丟掉,造成程序錯誤,需加強練習與理解。第17課時實驗題目:scanf函數(shù)的使用(1)實驗目的:掌握scanf函數(shù)的使用實驗地點:科教樓實驗時間:第三周實驗內(nèi)容:1.運行下面的程序,輸入:12、W、45.19main()int a;char b;float x;scanf(“%d,

33、%c,%f”,&a,&b,& x);printf(“a=%d b=%c x=%f n”,a,b,x);要求學生觀察屏幕顯示信息并嘗試輸入其它數(shù)據(jù)2.運行程序main()char x,y,z;scanf(“%c,%c,%c n”,&x,&y,&z);printf(“x=%c y=%c z=%c n”,x,y,z);讓學生輸入字符型數(shù)據(jù),觀察屏幕顯示信息采用兩種方法輸入:a,b,ca b cl 實驗小結:scanf()函數(shù)在C語言中用得非常頻繁,必須要從嚴要求學生掌握。第18課時實驗課題:scanf函數(shù)的使用(2)實驗目的:進一步掌握scanf函數(shù)的

34、使用實驗時間:第三周實驗內(nèi)容:1.運行以下程序main()char x,y,z;scanf(“%c,%c,%c n”,&x,&y,&z);printf(“x=%c y=%c z=%c n”,x,y,z);要求學生按程序要求輸入數(shù)據(jù)得出正確結果2.用兩種方法輸入數(shù)據(jù)a,b,ca b c3.以三種方法輸入數(shù)據(jù):12,34,56main()int x,y,z;scanf(“%d%d%dn”,&x,&y,&z);printf(“x=%d y=%d z=%d n”,x,y,z); 總結scanf函數(shù)輸入數(shù)據(jù)輸出結果的規(guī)律4.編寫一個程序:要求學生從鍵盤上輸

35、入數(shù)據(jù)(正方形的邊長),求出正方形的周長與面積l 實驗小結:大部分學生能在指導下正確使用scanf函數(shù),效果良好。第19課時教學課題:基本輸入輸出函數(shù)(3)教學時間:第四周教學目的:掌握輸入輸出函數(shù)教學重點:類型轉換符 單個字符的輸入輸出函數(shù):getchar()、putchar()教學難點:類型轉換符的使用教學過程:l 知識回顧printf()函數(shù)與scanf()函數(shù)的使用l 新課講授1.格式指示符a類型轉換字符d以帶符號的十進制整數(shù)形式輸出b類型轉換字符f以小數(shù)形式,按系統(tǒng)默認的寬度,輸出單精度和雙精度實數(shù)c類型轉換字符c輸出一個字符(只占一列寬度)d類型轉換字符s輸出一個字符串l 課堂練習

36、:main()int num=123;float f=123.456;char c=A;printf(“%d,%f,%c,%10s”,num,f,c,”Internet”);printf(“%-5d,%7.2f,%2c,%-8s”,num,f,c,”Internet”);l 教學小結:學生對類型轉換字符f的寬度理解不透徹,需加強指導與練習。第20課時教學課題:基本輸入輸出函數(shù)(3)教學時間:第四周教學目的:掌握單個字符的輸入輸出函數(shù)教學重點:單個字符的輸入輸出函數(shù):getchar()、putchar()教學難點:getchar()函數(shù)、putchar()函數(shù)的使用教學方法:啟發(fā)式教學、練習法教

37、學過程:l 知識回顧l 新課講授1.單個字符的輸入getchar()函數(shù)格式:getchar();作用:將從標準輸入設備輸入的字符讀出,返回值為讀出字符的ASCII值,出錯返回值EOF。EOF是在標準頭文件<stdio.h>中定義的一個常量,其值為了-1。例:#include”stdio.h” /*文件包含*/main()char ch;ch=getchar();printf(“ch=%c,ch=%dn”,ch,ch);說明:(1)要使用getchar()函數(shù),必須在程序(或文件)的開頭加上編譯預處理命令:#include”stdio.h” (2)getchar()函數(shù)只能用于單個

38、字符的輸入,一次輸入一個字符2.單個字符的輸出putchar()函數(shù)格式:putchar(c);作用:將一字節(jié)的代碼值所代表的字符輸出到顯示器上,將參數(shù)值中指定的字符送到標準輸出設備。返回值為輸出字符的ASCII碼,出錯返回值EOF。l 練習:#include”stdio.h” /*文件包含*/main()char ch1,ch2,ch3;ch1=getchar();ch2=getchar();ch3=getchar();putchar(ch1);putchar(ch2);putchar(ch3);putchar(n);#include”stdio.h” /*文件包含*/main()char

39、ch1=N,ch2=E,ch3=W;putchar(ch1);putchar(ch2);putchar(ch3);putchar(n);putchar(ch1);putchar(n);putchar(E);putchar(n);putchar(67);putchar(n);l 教學小結: getchar()函數(shù)、putchar()函數(shù)的使用第2122課時教學課題:算術運算符和算術表達式教學時間:第四周教學目的:掌握算術運算符的運算規(guī)則和算術表達式教學重點:算術運算符和表達式教學難點:類型轉換教學過程:第一課時l 知識回顧l 新課講授1. 通過與數(shù)學中算術運算符的運算規(guī)則與運算符比較,引出C語言

40、中的五種算術運算符 + - * / %說明:(1)+、-、* 三種運算符的運算對象可以是整型和實型;% 運算符的運算對象必須為整型。(2)兩個整數(shù)相除,商也是整數(shù),舍去小數(shù);如果除法運算符 / 的任何一側是實型數(shù)據(jù),結果是實型。如:5/3=1 3/1=0 5/3.0=1.666667 5.0/3=1.666667例:main()clrscr();printf("nn%d,%dn",20/7,-20/7); printf("%f,%fn",20.0/7,-20.0/7);根據(jù)結果加強對除法運算法則的認識(3)%(取余)運算的結果求余運算的結果等于兩數(shù)相除后

41、的余數(shù),符號與被除數(shù)的相同。如:1%3=1 1%-3=1 -1%-3=-1 -1%3=-1 main()clrscr();printf("%dn",100%3); printf("%f,%f,%f n",20.0/7,-20.0/7,-20.0/-7);請學生上臺來,根據(jù)求余運算的規(guī)則寫出程序運行結果2. 算術表達式(1)定義(2)優(yōu)先級a.加、減法運算符優(yōu)先級相同;b.乘、除、求余運算符優(yōu)先級相同;c.若同有加、減、乘、除、取余。則先做乘除求余運算,后做加減運算,有括號的先算括號里的。例:a+b(a*2)c(x+r)*8-(a+b)7+isin(x)+

42、sin(y)(+i)-(j+)+(k-)第二課時3. 類型轉換 (1)自動類型轉換 如果自述表達式中含有字符型和整型數(shù)據(jù),則把字符型數(shù)據(jù)轉換為整型數(shù)據(jù)如果算術表達式中含有整型和實型數(shù)據(jù),則把整型數(shù)據(jù)轉化為實型數(shù)據(jù),并且所有實型數(shù)據(jù)都以雙精度方式進行運算例:100-a+40.5(2)強制類型轉換 其一般形式為: (類型說明符) (表達式)其功能是把表達式的運算結果強制轉換成類型說明符所表示的類型例:(float)a 把a轉換為實型 (int)(x+y) 把x+y的結果轉換為整型練習:main()int a=5,b=2;printf("a除以b的值:a/b=%dn", a/b)

43、;printf("強制類型轉換后的結果:a/b=%fn", a/(float)b); printf("當前變量b的值:b=%d n",b);請學生分析運行結果l 布置作業(yè):寫出下面程序運行的結果main()int a=5;float b=2.0;printf("a/b=%dn", a/b);printf("a/b=%fn", a/(int)b); printf("b=%f n",b);l 教學小結:算術運算符和表達式的應用第23課時實驗課題:getchar()與putchar()函數(shù)的使用實驗時

44、間:第四周實驗地點:科教樓實驗目的:熟練掌握getchar()與putchar()函數(shù)的使用實驗內(nèi)容:任務:輸入三個小寫字母,把它們轉換成大寫字母輸出,分析程序運行結果。#include<stdio.h>main()char ch1,ch2,ch3;ch1=getchar();ch2=getchar();ch3=getchar();ch1=ch1-32;ch2=ch2-32;ch3=ch3-32;putchar(ch1);putchar(ch2);putchar(ch3);運行程序時,如果輸入的小寫字母是boy,程序將輸出大寫字母BOY,為什么?l 實驗小結: getchar()與

45、putchar()函數(shù)的使用方法第24課時實驗課題:算術運算符與表達式實驗目的:要求學生熟練掌握算術運算符的運算規(guī)則和算術表達式實驗時間:第四周實驗內(nèi)容:任務一:找出除法運算規(guī)則main()clrscr();printf (“整型數(shù)據(jù)相除:5/2=%dn”,5/2);printf (“實型數(shù)據(jù)相除:5.0/2.0=%dn”,5.0/2.0);printf (“整型實型相除:5/2.0=%dn”,5/2.0);根據(jù)程序運行結果分析除法運算法則任務二:編程計算表達式100-a+4.05+18%3*(5/2.0)任務三:分析下列程序運行結果main()int a=5,b=2;printf (“a除以

46、b的值是:a/b=%dn”,a/b);printf (“強制類型轉換后的結果:a/(float)b=%fn”, a/(float)b);printf (“當前變量b的值是:b=%dn”,b);l 實驗小結:學生對強制類型轉換符的表示理解不夠,編寫程序時將()括在了變量而不是類型上。第25課時教學課題:自增自減運算符教學時間:第六周教學目的:要求學生掌握自增自減運算符的使用教學重點:自增自減運算符的使用教學難點:自增自減運算符的使用教學過程:l 講授新課自增1,自減1運算符:自增1運算符記為“+”,其功能是使變量的值自增1。自減1運算符記為“-”,其功能是使變量值自減1??捎幸韵聨追N形式:+i

47、i自增1后再參與其它運算。-i i自減1后再參與其它運算。i+ i參與運算后,i的值再自增1。i- i參與運算后,i的值再自減1。 注意:自增自減運算對象可以是整型變量或實型變量,但不能是常量或表達式。 例:5+或(a+b)+都是不合法的 自增1,自減1運算符均為單目運算,都具有右結合性。例題:(讓學生理解自增自減運算)main()int i,j,k;k=30;i=k+;printf (“i=%d,k=5d”,i,k);j=+k;printf (“nj=%d,k=%dn”, j,k);l 課堂練習:請學生說出下面程序的輸出結果main()int i=8; printf("%dn&qu

48、ot;,+i); printf("%dn",-i); printf("%dn",i+); printf("%dn",i-); printf("%dn",-i+); printf("%dn",-i-);l 布置作業(yè):寫出下面程序運行的結果main()int i=3; a=i+; b=+i; c=i-;d=a+b+c; printf("%dn",-i-);l 教學小結:+k和k+的不同之處在于前者先執(zhí)行k=k+1,然后再使用k的值,而后者則是先使用k的值,再執(zhí)行k=k+1的值;同

49、理,-k與k亦然;第26課時教學課題:賦值運算符與逗號運算符教學時間:第六周教學目的:要求學生掌握賦值運算符與逗號運算符的使用教學重點:賦值運算符與逗號運算符教學難點:逗號運算符教學過程:l 講授新課1. 賦值運算符 賦值運算符記為“=” 結合方向:自右向左 優(yōu)先級:低于算術運算符,關系運算符與邏輯運算符例:main()float k,x,y; x=(k=9.8)+7;printf("nk=%5.1f,x=%5.1f ",k,x);y=k=9.8+7;printf("nk=%5.1f,x=%5.1f n",k,y);分析:(1)執(zhí)行語句x=(k=9.8)

50、+7;時先將9.8賦給中,(k=9.8)的值為9.8,然后9.8加上7等于16.8賦給x。 (2)執(zhí)行語句y=k=9.8+7;時由于“+”比“=”的優(yōu)先級高,且同仁運算的結合方向:右結合性,幫先計算9.8+7的值為16.8,將其賦給k,再賦給變量y。2. 復合的賦值運算符a+=5 等價于a=a+5 x*=y+7 等價于x=x*(y+7) r%=p 等價于r=r%p3. 逗號運算符 用逗號將表達式連接起來,優(yōu)先級最低 功能:先求解表達式1,再求解表達式2,整個逗號表達式的值為表達2的值。 例:x=(i=1,j=2,k=3); 相當于執(zhí)行:i=1; j=2; k=3; x=3; 例:x=i=1,j=2,k=3; 相當于執(zhí)行:i=1;x=i; j=2;k=3;例:main()int a=2,b=4,c=6,x,y;y=(x=a+b),(b+c);printf("y=%d,x=%d&q

溫馨提示

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

最新文檔

評論

0/150

提交評論