999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

高職C語言循環結構單元的教學設計

2016-11-12 05:56:41沈涵飛
無線互聯科技 2016年19期
關鍵詞:結構課程教學

沈涵飛,劉 正

(蘇州工業園區服務外包職業學院 信息工程學院,江蘇 蘇州 215123)

高職C語言循環結構單元的教學設計

沈涵飛,劉 正

(蘇州工業園區服務外包職業學院 信息工程學院,江蘇 蘇州 215123)

循環結構是“C語言程序設計”課程的重點和難點。基于多年教學實踐,該單元的教學設計采用了任務驅動的方式來展現不同循環結構的應用場景,從簡單任務開始,圍繞示例,階梯式地引入各種循環語句,并將難點分散到不同的教學單元。教學實踐表明這種方式取得了較好的教學效果。

循環結構;階梯式教學;教學設計;C語言

“C語言程序設計”是信息工程相關專業的重要基礎課,通常安排在大一講授。課程開設的主要目的是使學生理解計算思維,建立算法意識,借助C程序的知識載體,能編寫結構化程序來解決問題。C語言是結構化程序設計的代表語言,在順序結構、分支結構和循環結構這3種基本結構中,循環結構是最復雜的,而且和數組、函數、結構體等內容關系非常密切。

基于多年的高職C語言課程的教學實踐,作者對循環結構單元的教學內容和過程進行了重構和優化,在實踐中取得了很好的成效。

1 傳統的教學方式存在的問題

當前的C語言教材側重于知識傳授的系統性和邏輯性,教師通常按部就班地進行講解,先花大量的時間系統地講授各循環語句的語法規則、執行過程,然后再舉出相應的示例。

這種教學方法本意是期望學生能夠掌握基礎理論后,能夠舉一反三,靈活應用所學知識解決問題。但如果把這種方法用于抽象思維較弱的高職學生,往往適得其反。理論學習能力本就不強的高職學生由于消化困難,很容易喪失興趣,產生畏難情緒,很多同學干脆就放棄了課程的學習。

2 階梯式的循環結構教學設計

根據高職學生的認知特點,在循環結構的教學設計上,直接采用任務驅動的方式來展現循環結構的重要使用場景,強調for循環適合表示序列,在學習初期學生采用“依樣畫葫蘆”的方式就能完成程序編寫,完全不需要理解for循環的執行流程。接著從有限序列到無窮序列,很自然的引入break語句來改變循環的執行流程。然后強調 for循環和 while循環的等價性,在沒有序列或者序列并不明顯的情況下使用while循環和流程圖表示來解決其他循環結構的問題。

對于循環結構中的非重點內容如loop語句和continue語句,由于這些內容實際應用相對較少,作教學中做了弱化處理,避免給學生太多選擇而使學生陷入迷茫。把循環結構中的嵌套循環放在數組單元進行介紹,給學生的學習提供了適當的緩沖,避免難點過于集中而使學生產生畏難情緒。

同時,在整個課程的教學中,課程組使用“C/C++程序設計自動評測系統”的練習平臺,學生編寫的程序可以由練習平臺直接給出評判結果。在循環結構的教學中,更是布置了大量基礎練習題來幫助學生熟練掌握循環的應用。下面是循環結構教學設計和實施的具體步驟。

2.1 介紹循環的最簡單應用—簡單重復

循環最簡單的應用是控制語句塊重復執行的次數,循環變量在循環體內部并不使用。采用的例題是輸出10行的“good good study,day day up”。建議學生編寫的循環代碼為 for(i=1;i≤=10;i=i+1),鼓勵學生改變各個參數后運行程序,通過觀察結果來幫助理解程序。

2.2 使用for循環來表示序列

循環尤其是for循環最典型的應用是表示序列,例如語句 for(i=1;i≤=10;i=i+1)表示的序列是 {1,2,3,…,10},語句 for(c='a';c≤='z';c=c+1)表示字符序列 {a,b,… ,z}。通過分析常用的循環表達方式,歸納了常用序列表示,如表1所示。

表1 常用序列和 for循環的對應關系

在這個環節,采用的案例是計算 1+2+3+…+100 的值。這個例子可以寫成最原始也是最容易理解的順序結構;通過歸納可改寫成sum=sum+i,其中i依次遍歷序列{1,2,3,…,100},這個步驟學生也容易理解;在最后一個環節,學生可以根據常用序列的for循環表示寫出對應的for語句,從而完成程序的編寫。這幾個步驟如圖1所示。

在學生學習循環的初期,采用這種教學方式可以避免陷入“必須先理解for循環的執行機制,再編寫代碼”的困境中,讓學生相對容易地寫出程序代碼,增強學習C語言的信心。

for循環for(i=1;;i++)可以表達無窮序列,在這種情況下,程序會永遠運行下去嗎?此時引入改變循環正常執行流程的break語句就顯得非常自然了。對于改變循環正常執行流程的另一個語句continue,在初期教學時作了弱化處理,因為break語句是必須的,而continue語句是可有可無的,完全可用 if-else 語句來代替。

2.3 將for循環改寫成while和do-while循環(見圖2)

在介紹while循環時,一開始并沒有引入新的例子,還是使用同一個例子:計算 1+2+3+…+100 的值。向學生特別強調for循環和while循環在使用上是完全等價的,可以相互改寫,特別設計了圖2中的中間過渡環節來強調兩者的語義上的等價性,并要求學生把for循環表達改寫成while循環表達,然后再改寫回for循環表達。這種教學方式有利于消除學生對于循環的陌生感,不會增加心理上的負擔。

在學生掌握了for循環和while循環的代碼相互改寫后,再要求學生完成while循環和do-while循環的相互改寫,從而向學生全面介紹了結構化程序設計中最常使用的3種基本循環結構。

2.4 介紹流程圖、while循環及其適用場合

循環結構有for循環、while循環和do-while循環這3種基本表達方式。for循環適合表達序列,并不需要使用流程圖來幫助理解,循環體至少要執行一次的情況采用do-while循環,其他情況建議采用while循環。

while循環和do-while循環用流程圖來表達是非常直觀的。在介紹流程圖時,采用的例題是3n+1問題:對于任意大于1的自然數,若n為奇數,則將n變為3n+1,否則變為n的一半,經過若干次這樣的變換,一定會使n變為1,例如3→10→5→16→8→4→2→1。程序要求的輸入是n,要求程序輸出變換的次數。

如圖3所示,基本的當型流程圖很適合表達3n+1問題,再把流程圖轉化成代碼也很直觀,易于理解。

圖1 累加問題從順序結構遷移到循環結構

圖2 for循環轉化為while循環的過程

圖3 3n+1問題的流程圖和對應的while循環代碼

2.5 結合二維數組講解雙重循環

對于循環的嵌套,并沒有放在循環結構這個教學單元中進行講解,而是放在了數組單元。這主要基于兩個考慮:(1)大多數高職學生在短期內接受大量概念和變化有困難,等學生經過一段時間熟練掌握循環結構最基本的用法后,再引入相對復雜的內容,學生的理解效果會更好。(2)雙重循環和二維數組本身的關系就非常密切,雙重循環是二維數組的典型應用場景。

2.6 循環在其他編程語言中的實現

由于C語言在工業界的廣泛應用,其他主流編程語言如C++,Java和PHP在設計時就充分借鑒了C語言的特性,這些編程語言在控制結構上和C語言非常接近甚至完全一致。Java和PHP在C語言的基礎上提供了增強型的for循環—foreach,這種結構能更加清晰地用來表達序列,介紹foreach能加強學生對于for循環表達序列的理解。

在學生較好掌握C語言循環結構的基礎上,適時向學生介紹其他編程語言是如何編寫循環語句的,有助于學生了解C語言在程序設計課程中的基礎地位,增進學生對其他編程語言的親切感,增強學生學好程序設計類課程的信心。

3 結語

循環結構是“C語言程序設計”課程的重點和難點。在該單元的教學設計中,采用了任務驅動的方式來展現不同循環結構的應用場景,從簡單開始,圍繞示例,階梯式的引入各種循環語句,并通過相互改寫 for循環和 while循環來幫助學生理解兩者的聯系和區別,并將難點分散到不同的教學單元,消除了學生的畏難情緒,讓學生拾級而上,增強了學習的自信心。近兩年的教學實踐和學生程序設計競賽的表現表明該方法的教學效果非常有效。

[1]吳文虎.計算機程序設計基礎課程改革[J].中國大學教學,2004(2):14-15.

[2]吳文虎.我怎么講好“程序設計基礎”這門課[J].中國大學教學,2011(12):10-12.

[3]沈涵飛.比較教學法在 C語言和Java程序設計課程中的運用[J].軟件導刊,2013(12):171-173.

[4]何欽銘,陸漢權,馮博琴.計算機基礎教學的核心任務是計算思維能力的培養—《九校聯盟(C9)計算機基礎教學發展戰略聯合聲明》解讀[J].中國大學教學,2010(9):7-11.

Teaching design of C language loop structure unit in higher vocational education

Shen Hanfei,Liu Zheng

(Information Engineering College of Suzhou Industrial Park Institute of Services Outsourcing,Suzhou 215123,China)

Loop structure is the key and difficult point in the course of "C language program design".Based on many years of teaching practice,the teaching design of the unit uses task driven approach to show the different application scenarios of loop structures,and then this paper starts from a simple task,around the example,introduced a variety of ladder cycle statement,and difficulties will be distributed to different units.Teaching practice shows that this method has achieved good teaching effect.

loop structure;ladder teaching;instructional design;C language

江蘇省現代教育技術研究課題;項目名稱:基于智能終端的“數字化校園”與信息化學習環境建設;項目編號:2016-R-47449。

沈涵飛(1978—),男,江蘇蘇州,碩士,軟件架構設計師,講師;研究方向:信息化教學,移動互聯網,云計算。

猜你喜歡
結構課程教學
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
數字圖像處理課程混合式教學改革與探索
微課讓高中數學教學更高效
甘肅教育(2020年14期)2020-09-11 07:57:50
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
為什么要學習HAA課程?
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
“自我診斷表”在高中數學教學中的應用
東方教育(2017年19期)2017-12-05 15:14:48
對外漢語教學中“想”和“要”的比較
唐山文學(2016年2期)2017-01-15 14:03:59
論《日出》的結構
創新治理結構促進中小企業持續成長
現代企業(2015年9期)2015-02-28 18:56:50
主站蜘蛛池模板: 国产精品香蕉在线观看不卡| 免费视频在线2021入口| 日韩精品无码免费一区二区三区| 日本福利视频网站| 亚洲无码37.| 日本伊人色综合网| 无码电影在线观看| 99久久精品国产自免费| 国产福利在线免费观看| 国产一区二区三区精品久久呦| 精品91视频| 国产一级α片| 欧美国产日韩在线播放| 亚洲无码不卡网| 成年人国产视频| 国产成人免费视频精品一区二区| 亚洲天堂免费| 成年人午夜免费视频| 日本一区二区三区精品视频| 天天综合网站| 1769国产精品免费视频| 91成人免费观看| 国内视频精品| 国产成人91精品免费网址在线| 亚洲国产天堂久久综合226114| 亚洲欧美成人在线视频| 五月激情综合网| 国产黄色免费看| 成人a免费α片在线视频网站| 亚洲第一精品福利| 激情無極限的亚洲一区免费| 在线亚洲小视频| 欧美亚洲国产精品第一页| 日韩AV无码免费一二三区| 国产高清无码第一十页在线观看| 又爽又大又黄a级毛片在线视频| 99这里只有精品免费视频| 色偷偷一区二区三区| 亚洲一区色| 国产高潮流白浆视频| 成年人福利视频| 国模沟沟一区二区三区| 久久综合色播五月男人的天堂| 69av在线| 四虎国产永久在线观看| 精品91视频| 久草热视频在线| 亚洲91在线精品| 久久婷婷六月| 99精品在线视频观看| 在线国产毛片手机小视频| 国产剧情一区二区| 欧美在线视频不卡第一页| 91精品伊人久久大香线蕉| 久青草网站| 99热国产这里只有精品无卡顿"| 超薄丝袜足j国产在线视频| 亚洲va欧美va国产综合下载| 欧美色视频网站| AV在线天堂进入| 在线免费无码视频| 国产青榴视频| 第一区免费在线观看| 男人天堂亚洲天堂| 天天做天天爱天天爽综合区| 亚洲精选高清无码| 高清精品美女在线播放| 亚洲第一黄片大全| 久久综合九色综合97网| 激情在线网| 操国产美女| 亚洲精品无码成人片在线观看| 伊人欧美在线| 亚洲男人在线天堂| 一级毛片免费的| 国模粉嫩小泬视频在线观看| 亚洲黄色激情网站| 真实国产精品vr专区| 国内a级毛片| 亚洲熟女偷拍| 国产一区二区福利| 国产性爱网站|