c語(yǔ)言程序設(shè)計(jì)教學(xué)方法研究_第1頁(yè)
已閱讀1頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  C語(yǔ)言程序設(shè)計(jì)教學(xué)方法研究</p><p>  [摘要]C語(yǔ)言程序設(shè)計(jì)是計(jì)算機(jī)專業(yè)學(xué)習(xí)中的一門基礎(chǔ)課程,是培訓(xùn)學(xué)生對(duì)計(jì)算機(jī)程序設(shè)計(jì)學(xué)習(xí)興趣的關(guān)鍵課程。分析C語(yǔ)言教學(xué)過(guò)程中存在的一些問(wèn)題,并從方法論的觀點(diǎn)出發(fā),針對(duì)不同的學(xué)習(xí)階段,運(yùn)用不同的教學(xué)方法來(lái)提高教學(xué)質(zhì)量。 </p><p> ?。坳P(guān)鍵詞]C語(yǔ)言程序設(shè)計(jì)方法論教學(xué)方法 </p><p> 

2、?。壑袌D分類號(hào)]G642[文獻(xiàn)標(biāo)識(shí)碼]A[文章編號(hào)]2095-3437(2014)10-0056-02本文主要從學(xué)習(xí)C語(yǔ)言的5個(gè)階段來(lái)闡述如何把方法論運(yùn)用于C語(yǔ)言教學(xué)中。 </p><p>  一、理解計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的特點(diǎn) </p><p>  計(jì)算機(jī)的實(shí)質(zhì)是一種在指令的控制下運(yùn)行的一種電子設(shè)備。計(jì)算機(jī)只能識(shí)別二進(jìn)制編碼的機(jī)器指令。因?yàn)闄C(jī)器語(yǔ)言難學(xué),難記憶,所以在計(jì)算機(jī)技術(shù)的發(fā)展過(guò)程中

3、,逐步出現(xiàn)了匯編語(yǔ)言,高級(jí)語(yǔ)言和面向?qū)ο蟮恼Z(yǔ)言。所有這些計(jì)算機(jī)編程語(yǔ)言出現(xiàn)的目的都是想以盡量“接近”人類的語(yǔ)言來(lái)編寫計(jì)算機(jī)程序。所有的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言最終都要“翻譯”成計(jì)算機(jī)可執(zhí)行的機(jī)器語(yǔ)言,因此計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言即具有人類自然語(yǔ)言的特點(diǎn),也具有“計(jì)算機(jī)”語(yǔ)言的獨(dú)特之處。一方面,在學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言中,可以借鑒學(xué)習(xí)自然語(yǔ)言的方法來(lái)學(xué)習(xí)計(jì)算機(jī)編程語(yǔ)言,讓學(xué)生容易理解、接受。如自然語(yǔ)言有字符集,那么各類程序設(shè)計(jì)語(yǔ)言也有他們各自的字符集

4、。自然語(yǔ)言有語(yǔ)法法則,那么計(jì)算機(jī)語(yǔ)言也有語(yǔ)法法則,只有符合語(yǔ)言法則,計(jì)算機(jī)才能識(shí)別并翻譯成機(jī)器語(yǔ)言。另一方面,計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,最終要“翻譯”成機(jī)器語(yǔ)言,由于CPU只能執(zhí)行特定的某些指令,計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的語(yǔ)法規(guī)則是由計(jì)算機(jī)語(yǔ)言設(shè)計(jì)者所設(shè)計(jì),都是規(guī)定“死”了的法則,因此計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言不能像自然語(yǔ)言那樣能夠靈活使用。 </p><p>  二、透徹理解標(biāo)識(shí)符、常量、變量、運(yùn)算符和表達(dá)式 </p>

5、<p>  老師講課時(shí),應(yīng)盡可能多運(yùn)用各種教學(xué)方法講課,如類別法,對(duì)比法等,把一些基礎(chǔ)知識(shí)講透徹,讓學(xué)生容易理解、接受。如講字符集時(shí),可以用漢字字庫(kù)來(lái)類別;講標(biāo)識(shí)符時(shí),可以用“名字”來(lái)類別;講常量時(shí),一定要調(diào)動(dòng)學(xué)生思維,讓學(xué)生領(lǐng)悟到計(jì)算機(jī)是如何識(shí)別常量的,并運(yùn)用對(duì)比法,理解各種常量之間的區(qū)別,如字符‘A’與字符串“A”的區(qū)別,字符‘1’與數(shù)字1的區(qū)別等等;講變量時(shí),講清楚變量的數(shù)據(jù)類型、存儲(chǔ)格式和可進(jìn)行的運(yùn)算操作。講運(yùn)算符

6、時(shí),這種強(qiáng)調(diào)運(yùn)算符的優(yōu)先級(jí)和結(jié)合性,并用數(shù)學(xué)中的優(yōu)先級(jí)和結(jié)合性的實(shí)例進(jìn)行類比。 </p><p>  三、理解C語(yǔ)言語(yǔ)句 </p><p>  語(yǔ)句是程序設(shè)計(jì)語(yǔ)言的重要組成部分,如果不把語(yǔ)句理解清楚,學(xué)生沒(méi)辦法編程。C語(yǔ)言語(yǔ)句包括:控制語(yǔ)句、函數(shù)調(diào)用語(yǔ)句、表達(dá)式語(yǔ)句、空語(yǔ)句和復(fù)合語(yǔ)句。學(xué)生極易在空語(yǔ)句和復(fù)合語(yǔ)句這兩個(gè)知識(shí)點(diǎn)上犯錯(cuò)誤。講課時(shí),不僅要講清楚空語(yǔ)句和復(fù)合語(yǔ)句的概念,而且要結(jié)合控制

7、語(yǔ)句一起,演示空語(yǔ)句和復(fù)合語(yǔ)句對(duì)程序結(jié)構(gòu)的影響?,F(xiàn)在用2個(gè)實(shí)例來(lái)分別說(shuō)明空語(yǔ)句和復(fù)合語(yǔ)句對(duì)程序結(jié)構(gòu)的影響。 </p><p>  例 1假設(shè)變量均已定義,執(zhí)行下列語(yǔ)句的結(jié)果是() </p><p>  for(i=1;i<=5;i++); </p><p>  printf(“*”); </p><p>  A *****B *C 有語(yǔ)

8、法錯(cuò)誤 </p><p>  本題好多學(xué)生一看馬上選A,正確的答案是B,因?yàn)閒or語(yǔ)句括號(hào)后有1個(gè)分號(hào),所以循環(huán)體是空語(yǔ)句,當(dāng)for循環(huán)執(zhí)行結(jié)束后,順序執(zhí)行后面的printf(“*”);語(yǔ)句,輸出1個(gè)“*”。 </p><p>  例 2編一個(gè)程序,滿足下面函數(shù)的功能:輸入一個(gè)x值,輸出y值。請(qǐng)判斷下面程序是否正確。 </p><p><b>  y=-1

9、(x0) </b></p><p><b>  main() </b></p><p>  { int x,y; </p><p>  scanf(“%d”,&x); </p><p><b>  y=0; </b></p><p><b>  if(x

10、>=0) </b></p><p><b>  if(x>0) </b></p><p><b>  y=1; </b></p><p><b>  else </b></p><p><b>  y=-1; </b></p&

11、gt;<p>  printf(“x=%d,y=%d\n”,x,y);} </p><p>  本例大部分學(xué)生都認(rèn)為是正確的,認(rèn)為else與if(x>=0)的那個(gè)if匹配,實(shí)際上else應(yīng)與if(x>0)的那個(gè)if匹配,因?yàn)閑lse總是與上面最近沒(méi)有匹配的if向匹配。要使else與if(x>=0)的那個(gè)if匹配,可以再用一對(duì)花括號(hào)把if(x>0) y=1;這條語(yǔ)句括起來(lái),由于

12、復(fù)合語(yǔ)句里面的結(jié)構(gòu)不能與花括號(hào)外面有聯(lián)系,所以按以上方法加花括號(hào)后,就改變了程序的流程,使else與if(x>=0)的那個(gè)if匹配。修改結(jié)果如下: </p><p><b>  main() </b></p><p>  { int x,y; </p><p>  scanf(“%d”,&x); </p><p>

13、<b>  y=0; </b></p><p><b>  if(x>=0) </b></p><p><b>  {if(x>0) </b></p><p><b>  y=1;} </b></p><p><b>  else &

14、lt;/b></p><p><b>  y=-1; </b></p><p>  printf(“x=%d,y=%d\n”,x,y);} </p><p>  在講完語(yǔ)句這部分內(nèi)容之后,要及時(shí)給學(xué)生做總結(jié),讓學(xué)生深刻理解控制語(yǔ)句結(jié)構(gòu)中語(yǔ)句可以是哪些語(yǔ)句。如 if(表達(dá)式) 語(yǔ)句,這里的“語(yǔ)句”可以是以下3種: </p>&

15、lt;p>  1.一條簡(jiǎn)單的語(yǔ)句; </p><p>  2.由1對(duì)花括號(hào)括起來(lái)的1條復(fù)合語(yǔ)句; </p><p>  3.只有1個(gè)“;”構(gòu)成的空語(yǔ)句; </p><p>  四、提高學(xué)生算法分析的能力 </p><p>  在教書過(guò)程中,好多學(xué)生總說(shuō)老師講的內(nèi)容都懂,照著老師編程都會(huì),就是當(dāng)自己編程時(shí)遍不出來(lái)。這部分學(xué)生其實(shí)是算法分析

16、能力較差,并不是C語(yǔ)句基礎(chǔ)知識(shí)不好。在講課時(shí),首先讓學(xué)生先把C語(yǔ)言拋在一邊,理解題意,分析算法,并用流程圖把算法描述出來(lái),然后根據(jù)流程圖編寫程序。例如:從鍵盤上輸入一個(gè)年份,判斷改年是平年還是閏年。 </p><p>  1.讓學(xué)生理解閏年的判斷方法:(1)不能被4整除的肯定不是閏年,能被4整除的不能確定;(2)能被4整除但不能被100整除的是閏年,能被4整除且能被100整除的不能確定;(3)能被4整除又能被10

17、0整除同時(shí)也能被400整除的是閏年,能被4整除又能被100整除但不能被400整除的不是閏年。 </p><p>  2.畫N-S流程圖。 </p><p><b>  ■ </b></p><p>  3.根據(jù)N-S流程圖編程。 </p><p><b>  main() </b></p>

18、;<p>  {intyear,leap; </p><p>  scanf(“%d”,&year); </p><p>  if(year%4==0) </p><p>  if(year%100==0) </p><p>  if(year%400==0) </p><p><b>

19、  leap=1; </b></p><p><b>  else </b></p><p><b>  leap=0; </b></p><p><b>  else </b></p><p><b>  leap=1; </b></p

20、><p><b>  else </b></p><p><b>  leap=0; </b></p><p><b>  if(leap) </b></p><p>  printf(“%d is a leap year.\n ”,year); </p><p

21、><b>  else </b></p><p>  printf(“%d is not a leap year.\n ”,year); </p><p><b>  } </b></p><p>  一般題目經(jīng)過(guò)這3步后,學(xué)生比較容易理解、接受。訓(xùn)練一段時(shí)間后,算法分析能力逐步提高,編程就不在困難了。 </p

22、><p>  五、提高調(diào)試程序的能力。 </p><p>  學(xué)生編程出錯(cuò)在所難免,關(guān)鍵是如何讓學(xué)生快速地找到錯(cuò)誤并快速更改過(guò)來(lái),確實(shí)是一件不容易的事。程序錯(cuò)誤可以分為語(yǔ)法錯(cuò)誤和語(yǔ)義錯(cuò)誤。對(duì)于語(yǔ)法錯(cuò)誤,編譯器可以查出來(lái),并可以定位錯(cuò)誤,一般錯(cuò)誤就是在指定的那行,如果那行沒(méi)有錯(cuò)誤,就向上找,如果再找不出來(lái),就看程序的整體結(jié)構(gòu)。對(duì)于語(yǔ)義錯(cuò)誤,讓學(xué)生自己把程序“執(zhí)行”一遍,分析錯(cuò)誤的結(jié)果是怎么執(zhí)行出

23、來(lái)的,然后通過(guò)對(duì)比,就可以發(fā)現(xiàn)語(yǔ)義錯(cuò)誤。 </p><p><b>  [參考文獻(xiàn)] </b></p><p>  [1]譚浩強(qiáng).C程序設(shè)計(jì)第三版[M].北京:清華大學(xué)出版社,2005,. </p><p> ?。?]化志章,揭安全,鐘林輝.Java程序設(shè)計(jì)―從方法學(xué)角度描述[M].北京:機(jī)械工業(yè)出版社,2012. </p>&l

溫馨提示

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

評(píng)論

0/150

提交評(píng)論