【摘要】C語言中有多種程序結(jié)構(gòu),循環(huán)結(jié)構(gòu)最為重要的一種,也是教學(xué)中的重難點(diǎn)。循環(huán)結(jié)構(gòu)是C語言程序設(shè)計(jì)教學(xué)中的必講點(diǎn)。傳統(tǒng)教學(xué)中只重視理論的教學(xué),忽視了實(shí)踐應(yīng)用,不利于學(xué)生學(xué)習(xí)掌握,本文提出了循環(huán)要素的概念,提出一種相對(duì)優(yōu)化的方法。
【關(guān)鍵詞】C語言? 循環(huán)結(jié)構(gòu)? 程序結(jié)構(gòu)
0引言
在高職C語言程序設(shè)計(jì)教學(xué)過程中,都會(huì)講到一個(gè)重要的知識(shí)點(diǎn),循環(huán)結(jié)構(gòu)。從教學(xué)多年的經(jīng)驗(yàn)發(fā)現(xiàn),高職學(xué)校學(xué)生在循環(huán)結(jié)構(gòu)知識(shí)點(diǎn)這塊,學(xué)起來比較吃力,對(duì)知識(shí)點(diǎn)的掌握存在很大困難。本文從全新角度出發(fā),提出一種優(yōu)化的方法,來講授循環(huán)結(jié)構(gòu)知識(shí)點(diǎn)。從循環(huán)的結(jié)構(gòu)、改革傳統(tǒng)教學(xué)方法、循環(huán)要素等方法進(jìn)行說明。
1、循環(huán)結(jié)構(gòu)
在C語言程序設(shè)計(jì)課程教學(xué)中,都會(huì)講到一個(gè)重要的知識(shí)點(diǎn),即程序結(jié)構(gòu),其中含有三種程序結(jié)構(gòu),順序、選擇和循環(huán)。前兩種結(jié)構(gòu)較為簡單,學(xué)生學(xué)起來比較輕松,循環(huán)結(jié)構(gòu)較為復(fù)雜,學(xué)生學(xué)起來比較吃力,從理論掌握到實(shí)踐應(yīng)用都比較困難。循環(huán)結(jié)構(gòu)可以看成是一個(gè)條件判斷語句和一個(gè)向回轉(zhuǎn)向語句的組合。另外,循環(huán)結(jié)構(gòu)的三個(gè)要素:循環(huán)變量、循環(huán)體和循環(huán)終止條件,循環(huán)結(jié)構(gòu)在程序框圖中是利用判斷框來表示,判斷框內(nèi)寫上條件,兩個(gè)出口分別對(duì)應(yīng)著條件成立和條件不成立時(shí)所執(zhí)行的不同指令,其中一個(gè)要指向循環(huán)體,然后再從循環(huán)體回到判斷框的入口處。
從教學(xué)多年的經(jīng)驗(yàn)來看,循環(huán)結(jié)構(gòu)即是C語言程序設(shè)計(jì)課程教學(xué)中的重點(diǎn)內(nèi)容,也是學(xué)生難以掌握的難點(diǎn)之一。循環(huán)結(jié)構(gòu)知識(shí)學(xué)習(xí)的好壞,甚至直接影響到后續(xù)知識(shí)的學(xué)習(xí),直接體現(xiàn)在學(xué)生對(duì)C語言程序設(shè)計(jì)編程語言的掌握情況。
2、傳統(tǒng)教學(xué)方法
翻閱市面上多個(gè)C語言類教材,循環(huán)部分的知識(shí)的講解,一般都會(huì)依據(jù)以下情況來安排:以一個(gè)運(yùn)用循環(huán)結(jié)構(gòu)的場(chǎng)景——講授運(yùn)用循環(huán)結(jié)構(gòu)的語法語句——舉例子進(jìn)一步說明。這種步驟安排一般是比較經(jīng)典的傳統(tǒng)方法。筆者在以往的教學(xué)過程中,也是按照此類方法進(jìn)行講授,教學(xué)效果和教學(xué)情況效果一般。在理論講授部分,學(xué)生都覺得難以理解,對(duì)知識(shí)點(diǎn)的掌握往往都是一知半解。
仔細(xì)研究這些傳統(tǒng)的教學(xué)方法,你會(huì)發(fā)現(xiàn),傳統(tǒng)的教學(xué)思路中忽略了對(duì)循環(huán)結(jié)構(gòu)的研究分析,過多的側(cè)重于講授其語法內(nèi)容。學(xué)生往往只是停留在語法層面的理解,沒有深層次的掌握和理解循環(huán)結(jié)構(gòu),后續(xù)學(xué)習(xí)往往比較困難。
傳統(tǒng)的程序教學(xué)中,忽略了一個(gè)重要的部分,即學(xué)生沒有掌握程序設(shè)計(jì)的方法并運(yùn)用到實(shí)際情況中,學(xué)生一般會(huì)表現(xiàn)出能看懂程序,但不能自我編寫程序解決實(shí)際問題。算法是程序設(shè)計(jì)的關(guān)鍵,語言是工具。因此,在實(shí)際教學(xué)過程中,要向?qū)W生灌輸算法的重要性。
3、循環(huán)要素的引入
3.1引入
引入案例教學(xué)任務(wù),即在鍵盤導(dǎo)入一個(gè)同學(xué)的兩門功課考試成績(語文和數(shù)學(xué)),算出兩門成績的平均分后在屏幕上輸出。這個(gè)例子比較簡單,學(xué)生在基于已經(jīng)掌握的知識(shí)點(diǎn)上,比較容易完成此項(xiàng)內(nèi)容。這里的算法分為幾個(gè)步驟,導(dǎo)入、計(jì)算、導(dǎo)出,即(1)導(dǎo)入兩門功課成績,(2)計(jì)算平均分,(3)導(dǎo)出結(jié)果。
學(xué)生在實(shí)現(xiàn)以上內(nèi)容后,可以接著提出下一步的問題,算出全班45名學(xué)生的平均分,怎樣實(shí)現(xiàn)這一步?學(xué)生往往會(huì)局限于只學(xué)習(xí)了順序和分支結(jié)構(gòu),會(huì)套用已經(jīng)掌握的兩種結(jié)構(gòu)設(shè)計(jì)程序,會(huì)重復(fù)45此順序結(jié)構(gòu)的代碼,我們這里能夠知道運(yùn)用順序結(jié)構(gòu)來寫的話,也就三行代碼,但是寫45次的話,代碼書寫量就太大了,而且很容易出錯(cuò)。
3.2分析
引入循環(huán)結(jié)構(gòu)的相應(yīng)內(nèi)容后,進(jìn)行相應(yīng)的分析。在算法的研究上,可以先應(yīng)用偽代碼等方式進(jìn)行展示和描述。例如這里我們可以假定,要輸入并計(jì)算班上45名同學(xué)的功課成績,并按要求在屏幕輸出結(jié)果,可以先用正常的文字描述算法,算法如下:(1)從學(xué)號(hào)排名為第一位的同學(xué)開始計(jì)算;(2)導(dǎo)入這位學(xué)生的兩門功課成績并計(jì)算平均分后導(dǎo)出;(3)接著算出第二位同學(xué)、第三位同學(xué)……;
研究分析上面算法的幾個(gè)步驟:(1)第一步是表示算法從何時(shí)開始,即循環(huán)的起始;(2)說明循環(huán)的重復(fù)操作,即循環(huán)的核心部分;(3)最后一步即循環(huán)的結(jié)束。通過循環(huán),從第一個(gè)同學(xué)一直操作到最后第45位同學(xué);(4)說明循環(huán)怎樣結(jié)束,什么時(shí)候結(jié)束。這四個(gè)步驟都是不可缺少的。在編程語言中,我們將這四個(gè)部分依次稱為起始、循環(huán)主體、循環(huán)的迭代和循環(huán)的結(jié)束。這幾個(gè)要素是構(gòu)成循環(huán)的必要部分。
從教學(xué)實(shí)踐來看,仔細(xì)研究分析循環(huán)的幾個(gè)要素,在教學(xué)和學(xué)習(xí)中,怎樣運(yùn)用計(jì)算機(jī)編程語言來實(shí)際操作一個(gè)循環(huán),運(yùn)用計(jì)算機(jī)語言來完成一個(gè)循環(huán)的算法,并結(jié)合相應(yīng)的計(jì)算機(jī)編程語言的語法,將幾個(gè)要素結(jié)合到語法中,實(shí)現(xiàn)語法要求。
4、總結(jié)
在教學(xué)實(shí)踐中,發(fā)現(xiàn)傳統(tǒng)教學(xué)中,比較強(qiáng)調(diào)如何實(shí)現(xiàn)循環(huán)的語法理論內(nèi)容,忽略了循環(huán)算法本身的研究,這種方法讓高職學(xué)生學(xué)起來比較吃力,有畏難情緒。本文優(yōu)化了相應(yīng)的方法,引入循環(huán)的要素,利于學(xué)生理解學(xué)習(xí),將抽象的循環(huán)部分內(nèi)容細(xì)化到要素點(diǎn)的歸納上,結(jié)合實(shí)際,這種方法要由于傳統(tǒng)方法,對(duì)學(xué)習(xí)循環(huán)結(jié)構(gòu)的老師和學(xué)生有一點(diǎn)的指導(dǎo)意義。
參考文獻(xiàn):
[1]李娟,張燕.C 語言循環(huán)結(jié)構(gòu)教學(xué)的設(shè)計(jì)與實(shí)踐[J].計(jì)算機(jī)教育,2018(3):89-91.
[2]林玲,文思群.任務(wù)驅(qū)動(dòng)法在循環(huán)結(jié)構(gòu)設(shè)計(jì)教學(xué)中的應(yīng)用[J].計(jì)算機(jī)時(shí)代,2017(10):81=83.
[3]王煒,張慧,李偉民,彭霖.循環(huán)四要素法在循環(huán)結(jié)構(gòu)教學(xué)中的應(yīng)用[J].教學(xué)與教育信息化,2019(8):209-213.
[4]譚浩強(qiáng),C 語言設(shè)計(jì)[ M ].北京: 清華大學(xué)出版社,2000.
作者簡介:宋志飛(1985-),漢族,男,安徽太湖人,講師,碩士研究生,主要從事蟻群算法及應(yīng)用、計(jì)算機(jī)軟件及應(yīng)用、職業(yè)教育等方面的研究。