崔婭萍
【摘 要】在高職高專計算機相關專業(yè)中,《C語言程序設計》都是必修課,是為后續(xù)的很多課程打基礎的。但最終下來,很多從事這門教學的老師卻發(fā)現(xiàn):一個學期的教學下來,效果非常不理想。下面筆者把自己對該門課程的教學過程設計作了分享,希望能對該門課程教學效果的提高起到一定的促進作用。
【關鍵詞】教學設計;教學方法;教學手段;考核
一、課程目標的定位
《C語言程序設計》 課程一般在高職高專計算機相關專業(yè)里都是必修課,是基礎課程。主要課程目標有三方面:一是培養(yǎng)學生的計算思維;二是培養(yǎng)基本程序設計能力,提高分析問題和解決問題的能力;三是培養(yǎng)編程思想,為后續(xù)課程:面向對象程序設計、數(shù)據(jù)結構、單片機的學習和應用開發(fā)打下基礎。
二、教學設計與實施
(一)課程內容安排
把教學內容分為四個模塊:數(shù)據(jù)類型(基本數(shù)據(jù)類型、數(shù)組、結構體、指針)、程序結構(順序結構、選擇結構、循環(huán)結構)、函數(shù)、文件。
(二)教學對象的分析
教學對象分析較為重要,不同的對象采用不同的教學方法,做到因材施教才能取得好的教學效果。在高職高專里,大部分學生都是對理論課厭學,喜歡實踐性強的課程,分析問題、解決問題的能力弱,基礎較薄弱,對不易理解的問題容易放棄探知欲。
(三)教學過程的設計
1.模塊知識的連環(huán)設計
在《C語言程序設計》的教學、內容上一定要做到由簡到繁,注意知識的遞進和連貫性。
通過由簡到繁的三個例子,讓學生了解并基本熟悉C程序的框架結構、程序設計的大概思路、語法規(guī)則、變量定義和數(shù)據(jù)的輸入、輸出,并模仿例子寫一個簡單的程序。以上三個例子中數(shù)據(jù)類型一般是整形,但實際生活中數(shù)據(jù)類型不止整形,于是帶著同學們一起學習更多的數(shù)據(jù)類型和運算符,讓他們熟悉每種數(shù)據(jù)類型正確的定義和使用,運算符則著重強調之前沒有或者不熟悉的運算符的特點和應用。
2.帶著以上基礎,開始學習C程序設計的三種結構
2.1順序結構。順序結構就是按我們書寫的順序從上而下執(zhí)行,包括賦值語句和輸入、輸出。賦值語句跟數(shù)學里“=”有很大的差別,需要注意賦值方向和類型,這些都是學生容易出問題的地方,他們習慣把這個等于數(shù)學里的“=”。輸入和輸出呢,前面的例子中同學們已經掌握了簡單的輸入、輸出,但形式不夠豐富多樣,所以,在這節(jié)里需要同學們豐富輸入和輸出的多樣性,使輸入和輸出更通俗易懂和美觀。最終能實現(xiàn)非編程者本人通過運行程序,便大概知道編程者的目的。
2.2選擇結構。我們處理問題并不是都是按一定的順序,有時候是按一定的條件選擇執(zhí)行,我們生活中也經常需要作出很多的選擇。那么在c語言中,可以借助if和switch來幫助我們完成選擇。利用求最大值的例子引出if語句,首先要讓同學們熟悉if語句的格式,再學會運用。我們平時做出選擇的時候也習慣說:如果怎么樣,我就怎么樣,因為這個原因,同學們在學if的時候不會覺得很難。但他們解決某些問題的時候覺得用if書寫的時候很麻煩,比如成績的分數(shù)和等級互換的時候,通過該問題,便可以自如的引出switch語句,同樣,還是得先讓他們熟悉格式,理解應用特點。當學習了這兩種選擇以后,要讓同學們根據(jù)不同的問題選擇適合當前問題的解決方式。通過以上的學習、上機練習,可能同學們還是不能直觀感受它的實用性,于是,本節(jié)最后,讓同學們分組用智能小車來直觀感受選擇的實用性。
2.3循環(huán)結構
在上面利用智能小車完成選擇的實例中,同學們發(fā)現(xiàn)有個問題,就是小車向前行駛的距離控制很麻煩,帶著這個疑問,便進入到循環(huán)的學習中。首先,通過兩個例子讓同學們明白什么時候用循環(huán)結構,第一個例子:在屏幕上輸出一百行“*******************”,引出循環(huán)第一種狀態(tài)的應用,第二個例子:求1+2+3+4+………….+1000的和引出第二種狀態(tài)的應用;明白了什么時候使用循環(huán),那接下來就是怎么使用循環(huán),這樣,我們便引起同學們學習循環(huán)的興趣,帶著興趣,逐一去學習for語句、while語句、do….while語句。當三種循環(huán)都掌握了以后,同學們可能會產生一個疑問,三種循環(huán)有沒有什么區(qū)別,這時用“求1+2+3+…..的和,當和大于5000,就不在繼續(xù)了”這個例子讓他們體會三種語句的應用優(yōu)點,從而能根據(jù)不同問題選擇適合的語句解決。最后,讓他們分組讓智能小車向前走100步和永遠向前走去直觀感受每種語句的優(yōu)點或使用特點。
2.4其他知識點
2.4.1函數(shù)
在以上兩個學生分組實踐中,都會遇到同一個問題,就是某些語句需要在程序不同的地方重復書寫,面對這一問題,他們會覺得麻煩,自然會想:如何解決?帶著問題便開始探知函數(shù)的相關知識。函數(shù)這一節(jié),學生的難點是參數(shù)的傳遞,可以用一些生活實例進行分析說明,學生便宜理解一些。
2.4.2數(shù)組
學了以上知識以后,數(shù)據(jù)量小,簡單的程序設計應該說沒有太大問題,可生活中處理的問題往往都會涉及到大量的數(shù)據(jù),這就需要數(shù)組幫我們解決問題,帶著問題進入到數(shù)組的學習中。
2.4.3結構體
數(shù)組是把相同類型的數(shù)據(jù)組合為一個整體,但實際生活中很多時候我們需要把不同類型的數(shù)據(jù)組合為一個整體,比如:一個班的學生信息(姓名、學號、性別、年齡、成績等),于是,我們進一步學習結構體的基本知識點。
針對學生的應用不同,指針跟文件兩節(jié)內容在教學上便會有不一樣的安排,物聯(lián)網專業(yè)的會簡單講解,學生有個印象就可以了;應用技術專業(yè)的則會詳細一些。
(四)教學方法
為了讓學生更容易接受和理解相關知識,講授一般采用引導式的講解并加以操作演示,之后給同學們一個消化和吸收知識的過程,讓他們獨立上機實踐。為了加強同學們應用知識的能力和培養(yǎng)他們的協(xié)助精神,接下來的關鍵就是實施好分組合作實踐。
以上就是筆者在多年從事C語言程序設計教學中的一些思考和探索,但很多地方仍需改進,要真正實現(xiàn)技能型人才的培養(yǎng),實驗設備、師資隊伍、教學方式等都還需要加強和改變。
【參考文獻】
[1]石翠,王楊.C語言程序設計課程設計探討[J].電腦編程技巧與維護,2014(23):28-28
[2]管小衛(wèi).C語言課程設計探討[J].輕工科技,2009.25(1):68-68
[3]李博,馬芳芳.高職C語言課程設計探討[J].科技傳播,2010(23):292-293
(基金項目: 云南省教育科學規(guī)劃(高等學校教師教育聯(lián)盟)教師教育專項課題2014年度推進邊疆民族地區(qū)現(xiàn)代信息技術與學校教師教育融合研究,項目編碼:(GJZ1406))