期刊大全 雜志訂閱 SCI期刊 投稿指導(dǎo) 期刊服務(wù) 文秘服務(wù) 出版社 登錄/注冊 購物車(0)

首頁 > 公文范文 > c語言課程設(shè)計論文

c語言課程設(shè)計論文

時間:2022-05-06 03:23:42

序論:寫作是一種深度的自我表達(dá)。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內(nèi)心深處的真相,好投稿為您帶來了一篇c語言課程設(shè)計論文范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創(chuàng)作。

c語言課程設(shè)計論文

c語言課程設(shè)計論文:從C語言課程設(shè)計看如何培養(yǎng)學(xué)生的軟件開發(fā)能力

[摘要]本文通過對C語言課程設(shè)計中的教學(xué)方法、考核手段的介紹,探討了在實踐中逐步提高學(xué)生軟件開發(fā)能力的方法。

[關(guān)鍵詞]課程設(shè)計 教學(xué)方法 考核手段 能力培養(yǎng)

一、引言

近年來,各高校越來越重視對學(xué)生實踐能力的培養(yǎng),各類課程設(shè)計在教學(xué)中所占的比重明顯增加。對于計算機系的學(xué)生,尤其是以培養(yǎng)應(yīng)用型人才為目標(biāo)的學(xué)生,開設(shè)各類課程設(shè)計課就顯得尤為重要。

本文以C語言課程設(shè)計為例,介紹了在實際教學(xué)中所采用的教學(xué)計劃、教學(xué)方法以及考核手段,通過對各個教學(xué)環(huán)節(jié)的分析和總結(jié),探討了如何在實踐中培養(yǎng)學(xué)生的軟件開發(fā)能力的方法。

二、C語言課程設(shè)計教學(xué)計劃

C語言技術(shù)是計算機最重要的應(yīng)用領(lǐng)域之一,也是發(fā)展較快的領(lǐng)域之一。其應(yīng)用早已滲透到各個行業(yè),C語言系統(tǒng)的開發(fā)、管理與維護(hù)是計算機專業(yè)人員必須要掌握的基本技能。因此在完成了理論教學(xué)之后,后續(xù)的C語言課程設(shè)計的安排是很關(guān)鍵的。

我們根據(jù)學(xué)生的實際情況,制定了相應(yīng)的教學(xué)計劃。要求選修C語言課程設(shè)計的同學(xué)必須先修C語言原理,具有程序設(shè)計的基礎(chǔ)。課程的主要內(nèi)容包括C語言設(shè)計概述、需求分析、概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計、C語言的物理設(shè)計、C語言的實施和C語言系統(tǒng)的管理維護(hù)。本課程以實踐為主,教學(xué)目標(biāo)是使學(xué)生能獨立設(shè)計C語言應(yīng)用系統(tǒng),掌握C語言設(shè)計的過程和方法。根據(jù)本課程的特點,充分重視上機實踐的環(huán)節(jié),課程在機房上,有利于學(xué)生學(xué)習(xí)。

本課程安排在一個學(xué)期內(nèi),教學(xué)周數(shù)為18周,每周6學(xué)時。每周具體內(nèi)容安排如表1。

三、各階段教學(xué)方法

由于各階段的任務(wù)不同,要求也不相同,因此分階段采用不同的教學(xué)方法,以一個學(xué)生熟悉的、容易理解的C語言項目開發(fā)過程為主線,貫穿整個教學(xué)過程,將相對枯燥的理論知識與實踐聯(lián)系起來。

題目選取階段是C語言課程設(shè)計的初始階段,也是決定能否達(dá)到教學(xué)目標(biāo)的關(guān)鍵性階段。如果題目選取得太大、太難,或者是學(xué)生不熟悉、很難接觸到的領(lǐng)域,做起來太困難,會影響學(xué)生的積極性,勢必會影響到后期的學(xué)習(xí)效果。而題目太簡單,又達(dá)不到教學(xué)標(biāo)準(zhǔn)。因此在本階段,采取教師提供參考題目,學(xué)生自主選擇的方法。教師根據(jù)開題報告整理出小組題目以及成員,并簡要分析選題的難易程度。在第二周的開題討論上讓每小組派代表進(jìn)行發(fā)言,大家分析討論題目的可行性,對于選題不合理的,重新修改。這階段可以充分調(diào)動學(xué)生的積極性,活躍大家的思維,實際教學(xué)效果良好,很多學(xué)生的選題都具有現(xiàn)實應(yīng)用意義。

題目確定完之后,就要進(jìn)行需求分析。很多學(xué)生認(rèn)識不到這部分的重要性,選定題目后就想開始代碼的編寫工作,往往做了一半就進(jìn)行不下去。因此教師在課堂上要通過實例充分講解需求的分析重要性,講解具體的需求分析方法,使學(xué)生理解需求分析是整個設(shè)計過程的基礎(chǔ),同時掌握基本的需求分析技能。在需求分析階段,要盡可能收集課題的完備需求,可以利用不同小組互相模擬實際用戶的形式,增加學(xué)生的交流能力和開發(fā)興趣。在需求分析階段,要完成系統(tǒng)的數(shù)據(jù)流圖和數(shù)據(jù)字典。高質(zhì)量的完成需求分析工作可以鞏固學(xué)生在理論課上學(xué)到的數(shù)據(jù)流圖、數(shù)據(jù)字典等基礎(chǔ)理論知識,并提高學(xué)生的歸納總結(jié)能力。

確定用戶需求后,進(jìn)入系統(tǒng)設(shè)計階段。系統(tǒng)設(shè)計階段要完成應(yīng)用系統(tǒng)的設(shè)計和C語言設(shè)計。應(yīng)用系統(tǒng)的設(shè)計要完成課題應(yīng)用軟件的架構(gòu)設(shè)計和具體功能模塊的劃分。C語言設(shè)計要結(jié)合應(yīng)用系統(tǒng)的設(shè)計,逐步完成C語言的概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計和物理設(shè)計。概念結(jié)構(gòu)設(shè)計階段是整個C語言設(shè)計的關(guān)鍵,該階段通過對用戶需求進(jìn)行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型;邏輯結(jié)構(gòu)設(shè)計階段要將概念結(jié)構(gòu)轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化;物理設(shè)計階段要為邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)。C語言設(shè)計不但可以加深學(xué)生對ER圖等理論知識的理解,還有助于提高學(xué)生的軟件系統(tǒng)設(shè)計能力。

系統(tǒng)實現(xiàn)階段,教師對采用的教學(xué)案例代碼進(jìn)行演示,針對不同的程序設(shè)計語言對C語言的連接部分進(jìn)行講解,并給出相應(yīng)的示例代碼。此階段主要是學(xué)生動手編寫代碼,完成系統(tǒng)功能。要指導(dǎo)學(xué)生編寫高質(zhì)量的代碼,包括變量的命名方法、代碼的書寫規(guī)則、代碼的注釋規(guī)則等。這階段教師可采用啟發(fā)式教學(xué),對于學(xué)生在設(shè)計中遇到的問題,要引導(dǎo)他們學(xué)會查找資料,自己思考解決。

系統(tǒng)測試階段,包括單元測試和集成測試。要指導(dǎo)學(xué)生進(jìn)行測試用例的編寫,掌握正確的測試方法。對于C語言系統(tǒng),還要進(jìn)行C語言的性能測試和容量測試。通過系統(tǒng)測試,使學(xué)生掌握正確的測試方法,有效提高軟件的質(zhì)量。

四、考核方式

教師在每個階段都會進(jìn)行檢查,對完成情況進(jìn)行記錄。開題階段,要求學(xué)生以小組為單位,完成開題報告,并確定選題是否合理。在需求分析階段,要求每組上交需求分析。在接下來的系統(tǒng)設(shè)計、實現(xiàn)及測試階段,要求學(xué)生詳細(xì)記錄設(shè)計思想、設(shè)計方法、實現(xiàn)過程及測試結(jié)果,整理出完整的課程設(shè)計報告書。最后由教師綜合考慮以下幾方面的因素,給出總評成績,包括文檔的完成情況、開發(fā)環(huán)境的選取、系統(tǒng)功能實現(xiàn)情況、用戶界面的設(shè)計以及現(xiàn)場演示答辯的效果。通過以上方式,較綜合、客觀地評價了學(xué)生的文字及語言的表達(dá)能力以及系統(tǒng)設(shè)計、程序開發(fā)的能力。

五、結(jié)束語

教學(xué)實踐表明,這種形式的C語言課程設(shè)計,可以使學(xué)生有效地鞏固對基礎(chǔ)理論知識的掌握,可以使學(xué)生系統(tǒng)地了解軟件開發(fā)流程,提高學(xué)生的軟件工程化開發(fā)能力,增強學(xué)生的就業(yè)競爭力,并且可以建立學(xué)生的團(tuán)隊意識,提高學(xué)生的交流和協(xié)作能力。

c語言課程設(shè)計論文:C語言課程設(shè)計心得體會

回想學(xué)習(xí)C語言的過程中,既有快樂又有煩惱。

從領(lǐng)到書的那一刻,我就很郁悶,《C語言程序設(shè)計》到底事學(xué)什么的,有什么用。剛開始上課時,還在迷茫這門課程是用來做什么的。不過,這些感受都是在對這門課程不了解的情況下產(chǎn)生的。后來慢慢的接觸多了,聽老師講的多了,了解多了,漸漸的產(chǎn)生了興趣。尤其是學(xué)到語句和函數(shù)時,上機操作程序,經(jīng)過編譯,調(diào)試和運行后,出現(xiàn)界面,當(dāng)時覺得很好奇,想真正的學(xué)好這門課程。通過半個學(xué)期的學(xué)習(xí),我掌握了基本知識。

下學(xué)期開始時,被通知要進(jìn)行三周的課程設(shè)計。當(dāng)時有點懵,感覺學(xué)的東西很少,很零散,不知該怎么練到一起,就要課程設(shè)計,是不是太難為我們了。

第一天基本上都是在看書,把基本知識再熟悉一邊。到了下午的時候,老師發(fā)過來三道練習(xí)題,從這幾道練習(xí)題上我得到了不少啟發(fā),然后我們組把整個程序的思路理清了,開始著手寫程序。

第一周結(jié)束的時候,我感覺自己收獲挺大的,從一開始的迷茫,不知道從何下手到把程序中的幾個模塊編寫出來,心里挺開心的。但是,到了第二周,我們由不得不再次陷入困境。在整個程序的編寫過程中。最難的就是修改和刪除這兩個模塊,這也是我們第二周要解決的重點問題。

開始編寫修改和刪除時,很頭疼,去向其他人尋求幫助,在別人的幫助和提示下,我編完了修改程序,但編譯時老出錯,修改后的內(nèi)容將文本內(nèi)的信息全部覆蓋了。困難之時,我們組的其他人,幫助了我,完成了修改和刪除。這樣的話,整個程序基本上全部完成了,就剩下完善工作了。我們組寫了兩個程序,最后,兩個程序相互組合,互補,大功告成

雖然設(shè)計時完成了,但是我覺得其中還是由一些不足之處:

1.警告句。程序中缺少一些警告句,例如:“是否真的刪除(y/n)?”。

2.重名的情況。由于考慮的不周全,沒有設(shè)計遇到重名的情況該怎么處理。

3.選擇單一。我們設(shè)計的程序中,只設(shè)計了按名字選擇,進(jìn)行操作,忽略了重名的情況。

整個程序完成了,還有很多不完善的地方,希望自己以后辦事的時候要認(rèn)真,仔細(xì),考慮周全。

短短的三周課程設(shè)計結(jié)束了,但是這段時間里,我又學(xué)到了更多C知識,如:對象數(shù)組,string類,文件流等,同時我也被提醒以后辦事的時候要認(rèn)真,仔細(xì),考慮周全。,也看到了團(tuán)隊精神和互幫互助的重要性。這一點會讓我終生受益。通過三周的課程設(shè)計,我覺得自己肚子里的墨水多了,收獲也挺大的,這三周過的挺充實!

c語言課程設(shè)計論文:C語言課程設(shè)計教學(xué)

1合理組織教學(xué)內(nèi)容

我校C語言教研組在指定教學(xué)計劃、教學(xué)大綱時,明確了教學(xué)目標(biāo)是“通過講授C語言的特點以及各種語句和基本函數(shù)的使用,使學(xué)生學(xué)會基本的C語言程序的編寫、調(diào)試等操作,領(lǐng)會結(jié)構(gòu)化程序設(shè)計的內(nèi)涵,訓(xùn)練程序設(shè)計的基本思想和方法,為今后開發(fā)軟件打下基礎(chǔ),為學(xué)習(xí)后續(xù)課程(如數(shù)據(jù)結(jié)構(gòu))作好準(zhǔn)備”。不僅要求學(xué)生學(xué)習(xí)理論,還必須能較熟練地上機操作,有較強的動手能力。作為工科專業(yè)接觸的第一門工具語言,最能反映理論與實踐的相結(jié)合。本課程所選用的教材在內(nèi)容組織上,雖然依邏輯思維方式進(jìn)行了歸類,但難點還是較為集中,跨度大;概念講得多,分析少;語言深硬,不夠形象,較難理解。針對該問題,C語言教研組對教學(xué)內(nèi)容重新進(jìn)行了規(guī)劃。第一,適當(dāng)壓縮部分難度較大,但實用性不強的內(nèi)容,如:文件指針。第二,擴充部分難度較大且十分重要的內(nèi)容,如:傳值與傳地址的對比。第三,充分利用互聯(lián)網(wǎng)資源,總結(jié)歸類相關(guān)知識點,如:可以將運算符優(yōu)先級總結(jié)為朗朗上口的七字口訣:單算關(guān)邏條賦逗。第四、將全國計算機二級C語言等級考試真題融入理論和實踐教學(xué)中。采用上述手段之后,明顯發(fā)現(xiàn)學(xué)生對學(xué)好C語言的信心增加許多,學(xué)習(xí)積極性也就隨之得到了提高。

2靈活使用教學(xué)方法

由于C語言程序設(shè)計是學(xué)生接觸到的第一門語言工具類課程,難度大、學(xué)生不易接受,為此我校C語言全體任課教師進(jìn)行集體備課,積極與學(xué)生保持互動溝通,隨時根據(jù)大多數(shù)學(xué)生實際接受情況適當(dāng)調(diào)整教學(xué)計劃,靈活使用教學(xué)方法,如下所示:在理論課上,采取的是激發(fā)學(xué)生學(xué)習(xí)動機的教學(xué)方法。在課堂上,要充分認(rèn)識到學(xué)生是主題,教師主要是起引導(dǎo)作用,引導(dǎo)學(xué)生自發(fā)學(xué)習(xí)、自主思考。因此,需要改變以往“填鴨式”教學(xué)方法,充分調(diào)動學(xué)生學(xué)習(xí)的積極性。為此,在每次上課之前,都需要做好充分的準(zhǔn)備,精心的設(shè)計好教學(xué)案例,這些案例最好能夠“看得見,摸得著,和生活密切相關(guān)”。例如,講到子函數(shù)時,在做課堂引入的時候,可以先給學(xué)生們演示一個五子棋的程序,讓學(xué)生直觀的了解到每個C語言程序都是由一個main函數(shù)和若干個子函數(shù)構(gòu)成。在上機課上,采取的是分組討論式的教學(xué)方法,將所有同學(xué)分成若干個小組,沒個小組設(shè)置一個組長,所安排的每個組長都必須具備兩個條件:掌握VC6.“0斷點”調(diào)試方法,理論知識扎實。我認(rèn)為上機課主要是鍛煉代碼的編寫、調(diào)試能力,所以應(yīng)該采取討論為主、講授為輔的方式。

3充分利用教學(xué)手段

在教學(xué)過程中,運用多媒體技術(shù)輔助教學(xué),有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,能發(fā)展學(xué)生的主體能力;同時由于多媒體信息量大,也能夠優(yōu)化教學(xué)過程。第一、依托利用Claroline開源平臺建立了C語言網(wǎng)絡(luò)課程,詳見南京理工大學(xué)泰州科技學(xué)院網(wǎng)絡(luò)教學(xué)平臺,設(shè)置有課程簡介、課程資料、課程計劃、學(xué)習(xí)討論等模塊,為學(xué)生提供了“第二課堂”,可以很好的彌補課堂教學(xué)的不足。第二,利用QQ、微信等即時通訊軟件進(jìn)行多渠道答疑,增強師生之前的溝通與交流。第三,開設(shè)網(wǎng)絡(luò)教學(xué)博客,對日常學(xué)生反饋較多的問題予以解答。

4結(jié)束語

作為一名C語言課程的教師,對教學(xué)模式的探索與研究是永無止境的,在今后的教學(xué)過程中,一定要繼續(xù)關(guān)注“C語言課程設(shè)計”的基本概念和程序設(shè)計方法,讓學(xué)生掌握分析問題、解決問題的能力,還需要通過加強上機環(huán)節(jié)來增強學(xué)生的動手能力。只有不斷的探索行之有效的教學(xué)方法,吸取前人的教學(xué)經(jīng)驗與教訓(xùn),才能在今后的教學(xué)工作中不斷突破自我,邁入新的臺階。

作者:譚立興 單位:南京理工大學(xué)泰州科技學(xué)院計算機科學(xué)與技術(shù)系

c語言課程設(shè)計論文:基于Funcode平臺C語言課程設(shè)計論文

1課程設(shè)計平臺的改革

為了激發(fā)學(xué)生的興趣,可以采用Funcode平臺進(jìn)行課程設(shè)計。Funcode平臺是一款基于游戲設(shè)計和動畫界面的C\C++\Java綜合實驗教學(xué)平臺,該平臺以游戲設(shè)計為“噱頭”,吸引學(xué)生的學(xué)習(xí)興趣,雖然如此,該平臺通過精選大量的游戲案例,還是很好地將程序設(shè)計知識點和游戲設(shè)計緊密地結(jié)合起來,始終緊扣C語言知識點,為C語言課程設(shè)計教學(xué)提供了一個很好的工具。

1.1圖形方式的游戲界面編輯Funcode平臺采用圖形界面方式的游戲編輯環(huán)境,直觀、美觀、簡潔易用。圖1所示為正在設(shè)計中的游戲,左側(cè)矩形框中為最終運行時可見的游戲界面,可以從右側(cè)中的“魚”(Funcode中稱為“精靈”,任何類似的圖片都是精靈,不同的精靈以精靈名區(qū)分)中任意拖拽一條“魚”到左側(cè)矩形框中,即可在游戲界面中增加一條魚。

1.2提供功能函數(shù),屏蔽對圖形的復(fù)雜處理Funcode平臺提供了大量功能函數(shù),屏蔽對圖形對象的復(fù)雜處理,使學(xué)生能夠?qū)W⒂诔绦蛟O(shè)計和游戲邏輯功能的實現(xiàn)。例如:功能函數(shù)voiddSetSpriteLinearVelocityX(constchar*szName,constfloatfVelX)可以使精靈以某一速度水平運動。讓圖1左側(cè)中的魚(假設(shè)該魚命名為fish0)游動起來,學(xué)生只需用一條函數(shù)調(diào)用語句dSetSpriteLinearVeloctyX(“fish0”,30)即可實現(xiàn);亦可通過調(diào)用功能函數(shù)dSetSpriteLinearVelocity(“fish0”,30,30)使魚水平方向和垂直方向分速度均為30,即在屏幕上“斜向”游動;功能函數(shù)dSetSpriteFlipX(“fish0”,true)調(diào)用可以使魚水平翻轉(zhuǎn),即實現(xiàn)“掉頭”功能。

1.3整體邏輯框架簡潔,功能強大Funcode平臺整體邏輯框架由7個主要函數(shù)模塊組成,分別是主函數(shù)模塊、鼠標(biāo)移動事件模塊、鼠標(biāo)單擊事件模塊、按鍵事件模塊、按鍵彈起事件模塊、對象碰撞事件模塊、對象與邊界碰撞事件模塊。其主函數(shù)模塊如以下程序代碼所示,通過主函數(shù)模塊控制整個游戲的運行和界面刷新。其他的6個函數(shù)模塊幾乎包含了游戲設(shè)計中需要處理的所有事件,并且向?qū)W生屏蔽了事件激發(fā)所需要的復(fù)雜判斷過程,所有的鼠標(biāo)事件、鍵盤事件、碰撞事件均為自動激發(fā),這很大程度上降低了設(shè)計難度,使學(xué)生可以專注于游戲邏輯功能的實現(xiàn)。例如:要實現(xiàn)圖1中的“魚”游到右側(cè)邊界時掉頭向左游邏輯功能,在Funcode平臺下,當(dāng)圖1中的“魚”游到右側(cè)邊界時,“對象與邊界碰撞”模塊將會自動激發(fā),該模塊的初始程序代碼如下所示。此時,學(xué)生無需判斷和處理“魚”是否游到邊界(這對大學(xué)一年級學(xué)生而言比較困難),只需要知道“魚”游到邊界后會自動調(diào)用“對象與邊界碰撞”模塊對應(yīng)的dOnSpriteColWorldLimit函數(shù)即可。因此,學(xué)生只要能夠根據(jù)游戲功能在該函數(shù)中正確地編寫相應(yīng)的代碼就可以了,具體實現(xiàn)“掉頭向左游”邏輯功能的完整程序代碼如下所示。顯然,這樣就極大地簡化了對圖形對象和事件的處理,學(xué)生就可以把更多的精力投入到游戲邏輯功能的實現(xiàn)和代碼的編寫和調(diào)試中。

1.4開放式環(huán)境,極大地激發(fā)學(xué)生創(chuàng)新能力Funcode提供了開放式的開發(fā)環(huán)境,除了完成Funcode提供的課程設(shè)計案例以外,學(xué)生也可以按照自己的思路,添加素材,大膽創(chuàng)新,設(shè)計和開發(fā)真正屬于自己的游戲,這樣能極大地激發(fā)學(xué)生的程序設(shè)計熱情。例如:一組學(xué)生開發(fā)的“大魚吃小魚”游戲,當(dāng)大魚吃小魚得分達(dá)到一定的分值時,可以生出“魚寶寶”,尾隨大魚游動,生動有趣。

2教學(xué)內(nèi)容和方法的改革

基于Funcode平臺,在教學(xué)內(nèi)容和方法的改革上,以激發(fā)學(xué)生興趣,調(diào)動學(xué)生學(xué)習(xí)主動性為主要目標(biāo),在此基礎(chǔ)上,貫穿整個課程設(shè)計的各個階段,采用多種教學(xué)方式和方法培養(yǎng)學(xué)生各方面的綜合素質(zhì)。

2.1選題階段在選題內(nèi)容上,典型游戲設(shè)計和自主創(chuàng)新相結(jié)合。改變原有的設(shè)計內(nèi)容變?yōu)榛贔uncode平臺游戲設(shè)計。設(shè)計內(nèi)容分為兩類:一類是典型的可在Funcode平臺上實現(xiàn)的游戲,比如坦克大戰(zhàn)、打地鼠等;另一類是學(xué)生自選題目,要學(xué)生根據(jù)Funcode平臺功能,發(fā)揮自己的想象力,創(chuàng)造自己的游戲。教師要通過討論、引導(dǎo)等方式,鼓勵學(xué)生自己設(shè)計游戲,培養(yǎng)其創(chuàng)新意識和創(chuàng)新能力。題目選定之后,要求學(xué)生將游戲整體功能用功能模塊和流程圖的方式清楚地表示出來,并且要能夠準(zhǔn)確地描述各模塊之間的關(guān)系,鍛煉學(xué)生的抽象思維和邏輯思維能力。在選題方式上,要堅持組內(nèi)討論和師生互動相結(jié)合。組內(nèi)討論有利于游戲功能的完善,有利于發(fā)揮所有同學(xué)的創(chuàng)新潛力,有利于調(diào)動學(xué)生參與的積極性。通過教師和學(xué)生的討論交流,教師要控制游戲功能的實現(xiàn)復(fù)雜度,既要保證設(shè)計的工作量,又要保證控制在可實現(xiàn)的范圍內(nèi)。

2.2設(shè)計階段在課程設(shè)計過程中,要避免“學(xué)生問,教師答”的教學(xué)模式,教師要積極地參與到所有學(xué)生的設(shè)計中,主動和學(xué)生交流討論,掌握他們的設(shè)計情況;善于通過引導(dǎo)啟發(fā),培養(yǎng)學(xué)生各方面的綜合素質(zhì)。在設(shè)計中,要及時發(fā)現(xiàn)并指出存在的問題;對于學(xué)生提出的問題,要善于引導(dǎo)他們積極獨立思考,盡量讓其自主分析,找到原因,進(jìn)而找到解決問題的方法,這一方面可以培養(yǎng)學(xué)生獨立思考,分析問題和解決問題的能力,另一方面可以增強學(xué)生的成就感和自信心,有利于調(diào)動學(xué)生參與實踐的熱情。對于游戲功能的實現(xiàn),要讓學(xué)生畫出流程圖或?qū)崿F(xiàn)步驟,體會程序設(shè)計中的抽象思維和邏輯思維。比如對于“打飛蟲”游戲,當(dāng)“拍子”拍中“飛蟲”時,對應(yīng)Funcode抽象概念為“拍子”對象和“飛蟲”對象發(fā)生碰撞事件,由于碰撞事件自動激發(fā),所以拍中“飛蟲”后對應(yīng)的游戲功能實現(xiàn)邏輯應(yīng)該在碰撞事件中表達(dá)。對于該碰撞事件的處理,要求學(xué)生首先畫出拍中“飛蟲”后的處理邏輯,體會程序設(shè)計中的邏輯思維。比如:使“飛蟲”圖像從界面消失在“飛蟲”鏈表中刪除該飛蟲顯示拍中特效根據(jù)拍中的“飛蟲”類型計分刷新游戲界面上顯示的實時得分值。課程設(shè)計要求按組進(jìn)行,設(shè)計中要求分工合理,任務(wù)明確,緊密協(xié)作,嚴(yán)格按照日程安排,完成設(shè)計任務(wù)。要求每2天一次,將每人獨立設(shè)計的模塊進(jìn)行整合并測試,同時要求學(xué)生定期開展討論,鼓勵他們對設(shè)計中存在的問題,積極和同組同學(xué)交流溝通,要善于發(fā)揮集體的力量,解決問題。在協(xié)作設(shè)計中,培養(yǎng)學(xué)生的團(tuán)隊合作意識。此外,在游戲的設(shè)計過程中,必然會存在一些較難實現(xiàn)或者知識點超出課本內(nèi)容的功能,從經(jīng)驗來看,大多數(shù)學(xué)生都會無奈地選擇放棄該功能。此時,教師一定要向?qū)W生強調(diào)自主學(xué)習(xí)的重要意義,讓他們認(rèn)識到課堂教學(xué)中講的內(nèi)容大多是最基礎(chǔ)的核心知識點,而實際的應(yīng)用中要涉及的知識卻遠(yuǎn)非如此,并積極鼓勵和指導(dǎo)學(xué)生學(xué)習(xí)和掌握相關(guān)知識點。

2.3考評階段為了進(jìn)一步培養(yǎng)學(xué)生興趣,調(diào)動其積極性,考核采用每組分別進(jìn)行講解和演示,交流心得體會,其他組同學(xué)和教師進(jìn)行打分的形式。打分項分為游戲功能、工作量、流暢性、創(chuàng)新性、美觀性等5個方面。演示中鼓勵其他組的同學(xué)提問和試玩游戲,盡量找出游戲設(shè)計的缺陷,通過多種方式培養(yǎng)學(xué)生的展示能力和競爭意識。最后,教師再進(jìn)行總結(jié)性點評,指出設(shè)計的優(yōu)缺點。

3教學(xué)效果

從調(diào)動學(xué)生學(xué)習(xí)積極性方面來看,在整個課程設(shè)計過程中,學(xué)生始終保持著極高的熱情。教師為課程設(shè)計建立了QQ群,提供全天答疑服務(wù),從QQ群討論情況來看,學(xué)生提問很多,討論熱烈,而且絕大多數(shù)在課外時間。此外,課程設(shè)計結(jié)束后,很多學(xué)生指出,F(xiàn)uncode平臺美中不足的是:自己創(chuàng)造出的游戲最終生成的可執(zhí)行程序離開Funcode平臺不能運行,非常令人遺憾。這也可以從一個側(cè)面反映了學(xué)生的熱情和對自己勞動成果的珍惜。從課程設(shè)計內(nèi)容來看,學(xué)生大多是按照自己的想法設(shè)計的,游戲功能可謂五花八門,創(chuàng)新能力得到了很好的培養(yǎng)和鍛煉。更重要的一點是達(dá)到了課程設(shè)計的教學(xué)目的,學(xué)生對程序設(shè)計的理解更加深刻,鞏固了C語言學(xué)習(xí)成果,能夠?qū)⒂螒蚬δ艿膶崿F(xiàn)邏輯用計算機語言準(zhǔn)確地表達(dá)出來。在程序設(shè)計中遇到的具體問題,學(xué)生能夠提出自己的解決思路,并通過編寫程序表達(dá)自己的思路,很好地將課堂上學(xué)到的理論知識應(yīng)用于實際問題的解決,抽象思維和邏輯思維能力、程序設(shè)計實踐動手能力均得到了很好的鍛煉。例如:圖2所示為學(xué)生設(shè)計的游戲初始界面。該游戲?qū)崿F(xiàn)的功能有:游戲?qū)崟r倒計時;游戲?qū)崟r顯示得分;通過鍵盤控制游戲的開始、暫停和游戲場景的切換;用鼠標(biāo)控制“拍子”進(jìn)行移動和拍打;打到大蚊子、小蚊子積分不同,打到堅果則減分,且打中目標(biāo)有圖片特效產(chǎn)生;蚊子的產(chǎn)生地點、時間、數(shù)量和產(chǎn)生時的飛行速度都是隨機的,且飛行速度隨著積分級別越來越快;游戲結(jié)束時顯示得分最高的三條歷史記錄等。此游戲中,學(xué)生自己編寫代碼(不包括自動生成的代碼)行數(shù)在800行以上,使用的C語言知識點涵蓋了數(shù)組、鏈表、函數(shù)、變量作用域、多分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等。

4結(jié)語

Funcode平臺簡單易行、圖形界面化的游戲界面編輯方式,使學(xué)生有很大的熱情根據(jù)自己的意愿去設(shè)計華麗精美的游戲,簡單的游戲設(shè)計主框架和平臺提供的圖形處理接口函數(shù)極大地降低了游戲設(shè)計的難度,使學(xué)生能夠?qū)W⒂谟螒蚬δ艿脑O(shè)計和游戲邏輯的實現(xiàn)。功能強大,提供了大多數(shù)游戲開發(fā)所必需的基本函數(shù)模塊,完全開放,學(xué)生可以根據(jù)自己的思路,發(fā)揮創(chuàng)造力和想象力,設(shè)計出真正的自己的游戲,極大地調(diào)動了學(xué)生對程序設(shè)計的興趣和熱情??傊?,40個學(xué)時的C語言課程設(shè)計中,學(xué)生對程序設(shè)計的興趣和熱情被激發(fā)出來,絕大多數(shù)學(xué)生體會到了程序設(shè)計的樂趣,對程序設(shè)計的認(rèn)識更加深刻,各方面的綜合能力得到了鍛煉和提高,取得了較好的教學(xué)效果。

作者:武航星姚琳張敏單位:北京科技大學(xué)計算機與通信工程學(xué)院

c語言課程設(shè)計論文:C語言課程設(shè)計教學(xué)探究

一、傳統(tǒng)C語言課程設(shè)計教學(xué)模式

C語言是最基本的計算機編程,是計算機、電子信息類等相關(guān)專業(yè)學(xué)生的專業(yè)入門課,在其學(xué)習(xí)過程中,要求必須掌握編程的技能。但是C語言的學(xué)習(xí)有其特點,規(guī)則比較多、知識點多,涉及到的編程程序等也比較難懂,在運行上代碼的要求較高,程序執(zhí)行效率高,因此更講究教學(xué)和學(xué)習(xí)的方式方法,但是在我們的教學(xué)中,目前教學(xué)方法比較單一,隨著信息化的發(fā)展,傳統(tǒng)的教學(xué)模式已經(jīng)無法適應(yīng),亟需改革。

1、傳統(tǒng)型

這種教學(xué)模式,也是最常用的,課堂上以老師為主,學(xué)生只能被動的接受知識的傳授。通過最直接“填鴨”式照本宣科,不管學(xué)生接受與否,最后的考核也是以知識點的記住與否,造成學(xué)生死記硬背,不能真正掌握知識。其基本模式為:學(xué)習(xí)——回答——糾錯——總結(jié)。這種模式下,使得教師在教材以外的發(fā)揮余地極小,基本是“照本宣科”,強行灌輸C語言的概念、特點、編程程序、基本的方法等,整個教學(xué)過程缺乏靈活機動、具有啟發(fā)性的內(nèi)容,學(xué)生被動的接受知識、被動的記憶、被檢查、被考試、被批評等,日復(fù)一日的教條式訓(xùn)練,不能有效地激發(fā)學(xué)生的主觀能動性與創(chuàng)造熱情。

2、任務(wù)型

C語言教學(xué)區(qū)別于其他學(xué)科,在理論知識的傳授之外,還需要培養(yǎng)學(xué)生的實際動手能力,因此,很多學(xué)校也采用“任務(wù)型”教學(xué)模式,基本模式為:根據(jù)具體要求提出任務(wù)—鼓勵學(xué)生設(shè)計方案—實際操作—解決任務(wù)。在日常的教學(xué)中,學(xué)校大多會利用電腦等鍛煉學(xué)生的實際動手能力,利用實際操作,鍛煉編程、邏輯等能力,從而掌握C語言的基本知識。例如翻轉(zhuǎn)課堂模式,教師將知識傳授環(huán)節(jié)制作成教學(xué)微課,課前提供給學(xué)生預(yù)習(xí),通過預(yù)習(xí)使課堂的實踐性練習(xí)目的性更明確,教師隨堂對學(xué)生遇到問題進(jìn)行指導(dǎo)分析,從而培養(yǎng)學(xué)生獨立思考能力和實際操作能力。這種模式的采用,相對于傳統(tǒng)模式,有其進(jìn)步性,這也是C語言等專業(yè)性、操作性學(xué)科區(qū)別于其他學(xué)科的特點決定的,在這種模式下更取決于教師自身的素質(zhì)、知識、能力等,是整個課程的掌控者、引導(dǎo)者,他們的能力直接關(guān)系著教學(xué)成果。

二、信息化背景下面臨的挑戰(zhàn)

隨著科技的發(fā)展,信息化在教學(xué)領(lǐng)域的應(yīng)用越來越普遍,信息技術(shù)的日新月異,也使得其在課堂上,已經(jīng)不僅僅是局限于簡單地計算機和多媒體運用,移動技術(shù)、智能化與虛擬技術(shù)等為我們的教學(xué)提供了新的思路和方法,如何能使我們的教學(xué)與高速發(fā)展的信息化相結(jié)合,是教育領(lǐng)域不斷探索的課題。C語言程序設(shè)計等課程具有很強的專業(yè)性要求,主要是建立在計算機信息技術(shù)的基礎(chǔ)上,對于信息化的反應(yīng)更為靈敏,傳統(tǒng)的課堂上,以教師為中心的“面對面”的教育模式面臨著挑戰(zhàn)和沖擊,用技術(shù)手段的靈活性與便利性來增強課程學(xué)習(xí)的興趣和接受能力。隨著新技術(shù)的廣泛應(yīng)用,會促使傳統(tǒng)的教學(xué)模式發(fā)生變革,以教師為中心的教學(xué)模式逐漸轉(zhuǎn)化為互動式教學(xué)模式,達(dá)到更好的教育效果。在C語言課程設(shè)計教學(xué)領(lǐng)域,進(jìn)行信息化教學(xué)改革的嘗試,充分利用信息技術(shù),變革教學(xué)手段和模式,是信息化發(fā)展的必然要求。只有實現(xiàn)C語言課程的信息化教學(xué)改革,使得教育信息化能夠普遍運用,才能展現(xiàn)出信息技術(shù)在推動C語言教學(xué)中的強大威力和廣闊前景。

三、教學(xué)模式改革的基本對策

教學(xué)模式直接反映出一定的教學(xué)理念,也直接決定著教學(xué)成果。隨著信息化的發(fā)展,教育信息化逐漸打破傳統(tǒng)的教學(xué)模式,在這樣的背景下,C語言教學(xué)模式的改革任務(wù)艱巨,如何構(gòu)建新型的信息化教學(xué)模式也是我們在實踐中不斷摸索的問題。

1、充分利用信息化的科技手段

信息化的科技手段,給我們的教育領(lǐng)域帶來變革,尤其是計算機領(lǐng)域的學(xué)習(xí),其主要是建立在信息化發(fā)展的基礎(chǔ)上,因此在教學(xué)中,更要與時俱進(jìn),與信息化的發(fā)展程度相互依存,相互輔助,C語言課程設(shè)計教學(xué)中,可以充分利用信息化的科技手段,如計算機技術(shù)、云計算技術(shù)、多媒體技術(shù)、網(wǎng)絡(luò)技術(shù)、虛擬現(xiàn)實技術(shù)、通信技術(shù)、移動學(xué)習(xí)技術(shù)、人工智能、傳感器技術(shù)等,這些技術(shù)的發(fā)展,帶來C語言教育領(lǐng)域的變革。為提高C語言教學(xué)質(zhì)量,激發(fā)學(xué)生學(xué)習(xí)C語言的積極性,我們可以在課程建設(shè)過程中充分利用現(xiàn)代技術(shù)帶來的便利與多樣性,以及趣味性。如在教學(xué)課件設(shè)計上,利用多媒體技術(shù),圖、文、動畫并茂,減少其枯燥的理論傳授,增加趣味性;利用網(wǎng)絡(luò)技術(shù),實現(xiàn)在線教育,建立“C語言程序設(shè)計”網(wǎng)站,分組進(jìn)行網(wǎng)站維護(hù),運用編程能力進(jìn)行更新;應(yīng)用現(xiàn)代的通信技術(shù),建立微信學(xué)習(xí)群,讓學(xué)生分享自己的學(xué)習(xí)經(jīng)驗,共享學(xué)習(xí)資源。

2、案例引導(dǎo)式教學(xué)模式

改革C語言教學(xué)模式,另一探索的模式為案例引導(dǎo)式教學(xué)模式,C語言的教學(xué),是為了培養(yǎng)學(xué)生讀程序、調(diào)試程序、寫(仿照)程序的能力以及規(guī)范性編程的能力,學(xué)習(xí)最主要的目的是為了應(yīng)用,對于編程的應(yīng)用,只有具體的應(yīng)用場景,即案例,才能更容易被接受,更易懂。案例引導(dǎo)式教學(xué)模式,在別的專業(yè)課教授中,常被使用,主要特點就是用案例去引導(dǎo)知識點的掌握,對案例進(jìn)行分析,通過分析啟發(fā)學(xué)生的思路,將學(xué)生帶入到具體的案例中,讓學(xué)生有一種“身臨其境”的代入感,從而掌握具體的知識,學(xué)會在這種場景下解決問題的方法,這種模式的教學(xué)更有針對性、系統(tǒng)性。案例引導(dǎo)式教學(xué)模式在C語言課程設(shè)計教學(xué)中的運用是指針對C語言課程的每一個核心知識點,建立配套的案例,通過這些案例的學(xué)習(xí)和掌握,使得學(xué)生在例子的佐證下,更加了解C語言的應(yīng)用,這種案例的設(shè)計,和我們的書本知識相結(jié)合,把理論知識融入到具體的案例中,進(jìn)行綜合性的闡述,如具體的計算機程序的編寫,設(shè)計游戲環(huán)節(jié),運用所學(xué)的C語言知識設(shè)計網(wǎng)站,并使之運行,可以在班吉內(nèi)分組進(jìn)行維護(hù)等,并加以各種領(lǐng)域成功案例或者失敗經(jīng)驗的案例,讓學(xué)生能夠更進(jìn)一步了解其應(yīng)用范圍、能力、領(lǐng)域等。

3、實踐教學(xué)模式

C語言課程設(shè)計的學(xué)習(xí),所需的能力不再是死記硬背,而是更注重實踐和應(yīng)用,因此我們在教學(xué)過程中,不能只傳授書本知識,還要鍛煉學(xué)生的動手能力和編程能力,實踐教學(xué)模式應(yīng)運而生,依靠大量的實踐,將所學(xué)的知識轉(zhuǎn)化為實際操作,得到進(jìn)一步的應(yīng)用。信息化技術(shù)為這種教學(xué)模式提供支撐服務(wù),我們可以在課堂上設(shè)計各種實踐環(huán)節(jié),也可以在課堂后與各種軟件公司、游戲公司、網(wǎng)絡(luò)公司等合作,增加實踐機會,讓學(xué)生在具體的實踐環(huán)節(jié)中,真正了解C語言的知識,并主動內(nèi)化這些知識,變?yōu)閷嶋H操作能力。在這種教學(xué)模式改革中,如何能夠更好的提高實踐能力需要通過各個環(huán)節(jié)的相互配合,如課程設(shè)計上,增強實驗、實訓(xùn)環(huán)節(jié),讓學(xué)生在熟練掌握C語言語法、程序結(jié)構(gòu)的基本理論的同時,通過大量的實踐操作,進(jìn)一步掌握C語言的知識,學(xué)會編碼;同是,積極與各軟件、互聯(lián)網(wǎng)、網(wǎng)絡(luò)公司簽訂實踐基地,讓學(xué)生可以在實際應(yīng)用中,邊做邊學(xué),提高學(xué)生邏輯思維、實際操作能力,真正實現(xiàn)教學(xué)目的,熟練掌握計算機編程能力。

作者:王桂華 單位:營口職業(yè)技術(shù)學(xué)院

c語言課程設(shè)計論文:C語言課程設(shè)計研究與運用

1開設(shè)課程設(shè)計的目的及意義

高等職業(yè)教育的目標(biāo)及側(cè)重點不同于普通高等教育,其培養(yǎng)的學(xué)生在畢業(yè)后應(yīng)能直接上崗,具有熟練的實踐操作技能。教育部《關(guān)于以就業(yè)為導(dǎo)向深化高等職業(yè)教育改革的若干意見》中指出,高職教育應(yīng)“堅持培養(yǎng)面向生產(chǎn)、建設(shè)、管理、服務(wù)第一線需要的‘下得去、留得住、用得上’,實踐能力強、具有良好職業(yè)道德的高技能人才”。

因此,加強實踐性課程教學(xué),對保證人才培養(yǎng)質(zhì)量顯得尤為重要。我院為貫徹《關(guān)于全面提高高等職業(yè)教育教學(xué)質(zhì)量的若干意見》(教高[2006]16號文件)精神,針對區(qū)域經(jīng)濟發(fā)展的要求,靈活調(diào)整和設(shè)置專業(yè)課程,以就業(yè)為導(dǎo)向,加快專業(yè)課程對應(yīng)的課程設(shè)計改革。目前,我院按照由淺入深、不斷深化的教學(xué)規(guī)律,構(gòu)建了實踐教學(xué)三層次四環(huán)節(jié)的實踐課程體系(圖1)。實踐教學(xué)三層次包括基本技能、專業(yè)拓展、綜合創(chuàng)新,四環(huán)節(jié)包括實驗、實習(xí)實訓(xùn)、設(shè)計和課外實踐?!癈語言課程設(shè)計”是我院信息類專業(yè)的必修專業(yè)基礎(chǔ)課程設(shè)計,在“C語言程序設(shè)計”課程教學(xué)結(jié)束后的下一學(xué)期進(jìn)行,歷時2周,40學(xué)時。課程開設(shè)的目的在于培養(yǎng)學(xué)生分析問題和解決問題的能力,為學(xué)生提供一個動手、動腦、獨立實踐的機會。

2項目教學(xué)法的簡單介紹

2.1項目教學(xué)法“項目教學(xué)法”是基于建構(gòu)主義教學(xué)理論的一種教和學(xué)的模式。著名的瑞士心理學(xué)家皮亞杰認(rèn)為,知識不是通過教師傳授得到的,而是學(xué)生在一定的情境下,借助他人的幫助,利用必要的學(xué)習(xí)資料,通過意義建構(gòu)的方式而獲得的。美國項目管理專家約翰·賓認(rèn)為:“項目是要在一定時間里,在預(yù)算規(guī)定范圍內(nèi)需達(dá)到預(yù)定質(zhì)量水平的一項一次性任務(wù)?!?

“項目教學(xué)法”是通過實施一個完整的項目而進(jìn)行的教學(xué)活動,旨在把學(xué)生融入有意義的任務(wù)完成的過程中,讓學(xué)生積極地學(xué)習(xí),自主地進(jìn)行知識的建構(gòu),在課堂教學(xué)中把理論與實踐教學(xué)有機地結(jié)合起來,充分發(fā)掘?qū)W生的創(chuàng)造潛能,提高學(xué)生解決實際問題的綜合能力。因此,在教學(xué)活動中,教師將需要解決的問題或需要完成的任務(wù)以項目的形式交給學(xué)生,在教師的指導(dǎo)下,以小組工作方式,由學(xué)生自己按照實際工作的完整程序,共同制定計劃,共同或分工完成整個項目。

在項目教學(xué)中,學(xué)習(xí)過程成為一個人人參與的創(chuàng)造實踐活動,注重的不是最終的結(jié)果,而是完成項目的過程。在高等職業(yè)技術(shù)教育中,項目是指以生產(chǎn)或制作一樣具體的、具有實際應(yīng)用價值的產(chǎn)品的工作任務(wù)。在技術(shù)領(lǐng)域,很多小產(chǎn)品或一些復(fù)雜產(chǎn)品的模型都可以作為項目,如:在信息類專業(yè),可以開展微機組裝、網(wǎng)站建設(shè)、信息管理系統(tǒng)開發(fā)、局域網(wǎng)構(gòu)建、單片機制作、多媒體課件制作等項目;在電子類專業(yè),可以開展報警器、LED、門鈴、家電組裝等項目;在商業(yè)、財會和服務(wù)行業(yè),所有具有整體特性并有可見成果的工作也都可以作為項目,如商品展示、產(chǎn)品廣告設(shè)計、營銷策劃等。

2.2項目教學(xué)法的基本特征項目教學(xué)法與傳統(tǒng)的教學(xué)法相比,有很大的區(qū)別,主要表現(xiàn)在改變了傳統(tǒng)的3個中心:以教師為中心轉(zhuǎn)變?yōu)橐詫W(xué)生為中心;以課本為中心轉(zhuǎn)變?yōu)橐浴绊椖俊睘橹行?以課堂為中心轉(zhuǎn)變?yōu)橐詫嶋H經(jīng)驗為中心。項目教學(xué)法具有以下特點:(1)實踐性。項目“源”于企業(yè),項目的主題與真實世界密切聯(lián)系,由淺入深,選擇的項目具有典型性、實用性。(2)自主性。提供學(xué)生根據(jù)自己的興趣選擇內(nèi)容和展示形式的決策機會,讓學(xué)生能夠自主地進(jìn)行學(xué)習(xí),從而有效地促進(jìn)學(xué)生創(chuàng)造能力的發(fā)展。(3)發(fā)展性。長期項目與階段項目相結(jié)合,構(gòu)成了實現(xiàn)教學(xué)目標(biāo)的認(rèn)知過程。(4)評價特殊性。項目型教學(xué)的評價注重學(xué)生在項目活動中能力發(fā)展的過程,測評內(nèi)容包括學(xué)生參與活動各環(huán)節(jié)的表現(xiàn)及作業(yè)質(zhì)量,避免了傳統(tǒng)的一張試卷定成績的弊端。測評可以采用自評、小組評、教師綜合評等方法。教師只有明確并抓住項目化教學(xué)特點,才能更好地完成教學(xué)目標(biāo)。

3項目教學(xué)法在“C語言課程設(shè)計”中的實施

3.1教學(xué)內(nèi)容為了更好地開展課程設(shè)計教學(xué),經(jīng)過多次實踐和摸索,總結(jié)出學(xué)生在具體實施項目中一般存在2個方面的知識不足:第一,在教學(xué)內(nèi)容上,由于前導(dǎo)課程在教學(xué)上受學(xué)時影響,很多教師對指針、結(jié)構(gòu)體、共用體和文件基本操作的知識介紹不甚完善、系統(tǒng),更難談上輔以實例加以消化。對此,針對學(xué)生在這些知識點上的掌握程度,利用4~6個學(xué)時,實施區(qū)別式的、輔導(dǎo)性的、實例化教學(xué)。第二,學(xué)生對項目管理知識知之甚少,針對此情況,采用2個階段實施有別于常規(guī)教學(xué)的補課行動。第1階段為項目準(zhǔn)備階段,利用2~4個學(xué)時,安排曾經(jīng)做過項目且做得比較好的學(xué)生,現(xiàn)身介紹項目的準(zhǔn)備工作(包括如何選題、如何查找資料、如何復(fù)習(xí)C語言知識)、項目實施過程要完成的工作(包括如何做市場調(diào)查、如何做需求規(guī)格分析說明書、如何做概要設(shè)計說明書、如何做詳細(xì)設(shè)計說明書、如何選擇使用代碼編碼器代碼編寫注意事項)、項目驗收及作業(yè)提交的工作(包括程序測試事項、如何寫課程設(shè)計報告)等。在學(xué)生介紹中,教師穿插講解,輔以點評。第2階段為項目實施階段,教師應(yīng)針對學(xué)生發(fā)生的問題,及時給予指導(dǎo),直到學(xué)生弄懂為止。

3.2教學(xué)要求切實保證教學(xué)質(zhì)量和教學(xué)效果,本著“學(xué)以致用”的原則,要求學(xué)生做到以下3點:第一要做到“學(xué)有三備”,即:在項目實施前做好知識儲備,在項目實施中做好安全防備,項目結(jié)束時做好被評準(zhǔn)備。第二要寫好“三書一報告”?!叭龝奔疵總€項目組要做需求規(guī)格說明書、概要設(shè)計說明書、詳細(xì)設(shè)計說明書,“一報告”即人人都要做課程設(shè)計報告。第三要做“四自”參與者?!耙蛔浴奔醋月?要求學(xué)生自覺履行學(xué)生守則和項目實施有關(guān)規(guī)則,不遲到、不早退、不缺席,實施點名制度,若無特殊原因,有5次曠課者自愿以重修論處;“二自”即自尊,要求學(xué)生尊重知識、尊重學(xué)習(xí)規(guī)律、尊重項目組成員、尊重教師、尊重自己;“三自”即自信,要求學(xué)生相信自己能夠按時、按量、按質(zhì)完成工作內(nèi)容,遇到困難時,沉著、冷靜,理性地尋找問題解決的辦法;“四自”即自強,要求學(xué)生不滿足自己已有的成績和以往與課題項目組共同取得的成績,用創(chuàng)新和超越的思想,做出比以前哪怕是前進(jìn)一小步的事情。同時也要求教師做好相應(yīng)的工作,如做好項目整體規(guī)劃、精心準(zhǔn)備、努力激發(fā)學(xué)生參與行為、為人師表、表揚為主、批評為輔、多分析、精點評等。

3.3項目實施進(jìn)程項目教學(xué)法是一種生動、靈活、多樣化的教學(xué)方法。在項目實施過程中,既不能生搬硬套地利用一個時間標(biāo)準(zhǔn),又不能影響項目實施的整體進(jìn)程,因此對時間的靈活處理是非常關(guān)鍵的,也是值得商榷的。

3.4明確項目內(nèi)容,幫助學(xué)生立項立項首先要審題。當(dāng)學(xué)生拿到項目列表時,最不能忽略的問題,就是提醒學(xué)生審題。審題恰當(dāng)對學(xué)生以后開展各項工作是關(guān)鍵。審題時,學(xué)生首先要考慮自己的長、缺處,做到揚長避短,也就是說審題就是學(xué)生自己審自己完成該項目有多大的能力,有沒有信心。只有學(xué)生明白自己,才可以避免以后實施項目過程中走彎路。同時既要建議學(xué)生在組建項目組時,考慮所在組的其他學(xué)生的長處和短處,又要盡量避免使被學(xué)生認(rèn)定的差等學(xué)生沒人愿意與其組合,而成績好的學(xué)生又抱團(tuán)的現(xiàn)象發(fā)生。

根據(jù)近幾年帶課程設(shè)計的經(jīng)驗,關(guān)于如何合理選擇項目,建議教師應(yīng)從學(xué)生的角度考慮以下4個因素,協(xié)助學(xué)生做好選題:(1)規(guī)模。項目規(guī)模太大會影響項目的完整性,項目規(guī)模太小難以體現(xiàn)課程的實踐性。(2)難度。項目難度一定要適中,既要激發(fā)學(xué)生學(xué)習(xí)的興趣又不能影響學(xué)生的自信心。(3)實用性。項目的選擇應(yīng)該是現(xiàn)實世界真實的工作任務(wù),具有一定的現(xiàn)實和實用性。(4)趣味性。興趣是最好的老師,所以在選擇項目時應(yīng)考慮其趣味性,讓學(xué)生有更大熱情投入項目。

c語言課程設(shè)計論文:C語言課程設(shè)計改革初探

摘 要: 通過一份問卷調(diào)查,發(fā)現(xiàn)C語言課程設(shè)計這門課程存在諸多問題。借鑒學(xué)生提供的建議,分別從課程設(shè)計的時間安排、課堂教學(xué)及課程設(shè)計的命題方面進(jìn)行了改革,相信這些改革措施一定會取得很好的教學(xué)效果。此外還對學(xué)生反映比較多的問題,比如“編譯錯誤不好發(fā)現(xiàn)、也不好修改”提供了一個很好的解決方案。所有這些教學(xué)改革措施的最終落腳點都是要為國家培養(yǎng)出更多、更優(yōu)秀的建設(shè)人才。

關(guān)鍵詞: C語言 課程設(shè)計 問卷調(diào)查

1.引言

C 語言作為一門程序設(shè)計語言的入門課程,很好體現(xiàn)了程序設(shè)計的靈魂,是進(jìn)一步學(xué)習(xí)其他語言或者計算機技術(shù)的理論基礎(chǔ)?!罢n程設(shè)計”在中國絕大多數(shù)高校已經(jīng)開設(shè)很多年,那么什么是“課程設(shè)計”呢?簡單地說,“課程設(shè)計”是一門這樣的課程:學(xué)生利用所學(xué)的書本知識來解決現(xiàn)實生活中的各種實際問題。本文從一份簡單的關(guān)于C語言課程設(shè)計的問卷調(diào)查說起,系統(tǒng)地總結(jié)了C語言課程設(shè)計存在的優(yōu)點和不足,并針對這些不足提出了一些可行的改進(jìn)措施。希望這些措施能夠落到實處,能夠?qū)ο嚓P(guān)的課程起到借鑒作用,以便為中國高校培養(yǎng)更多更優(yōu)秀的人才發(fā)揮一點作用。

在計算機發(fā)展的歷史上,還沒有哪一種程序設(shè)計語言能像C語言這樣應(yīng)用廣泛。C語言不是一種“很高級”的語言,也不“龐大”,并且不專用于某一個特定的應(yīng)用領(lǐng)域[1]。由前面的敘述可知,學(xué)習(xí)C語言對大學(xué)理科生,尤其對計算機學(xué)院的學(xué)生而言非常重要。筆者在一次C語言課程設(shè)計課上進(jìn)行了一次問卷調(diào)查,問卷調(diào)查的內(nèi)容參見圖1。盡管這個問卷調(diào)查非常簡單,可是通過它能發(fā)現(xiàn)C語言課程設(shè)計存在的問題。筆者對該問卷調(diào)查的結(jié)果進(jìn)行了匯總,首先看學(xué)生是怎樣評價C語言課程設(shè)計優(yōu)點的,如圖2所示。其實學(xué)生們提到的這些優(yōu)點教師早已知道,本文重點關(guān)注的是學(xué)生們提到的不足和建議。

那么C語言課程設(shè)計在我校開設(shè)的過程中存在哪些缺點和不足呢?有關(guān)的詳細(xì)信息如圖3所示。筆者將學(xué)生們提出的缺點與不足分為五個類別,這五個類別分別是:(1)關(guān)于時間安排和課時量的問題;(2)關(guān)于課堂教學(xué)的問題;(3)編譯與調(diào)試方面的問題;(4)關(guān)于教師輔導(dǎo)方面的問題;(5)關(guān)于題目方面的問題。筆者將在第3部分對這些存在的問題給出可行的解決方案。最后看看學(xué)生們給出的建議都是什么?詳細(xì)信息參見圖4,筆者提出的課程設(shè)計改革方案也參考了學(xué)生們提出的建議。

2.相關(guān)工作

曾輝等人[2]指出了當(dāng)前C語言程序設(shè)計課程教學(xué)中存在的問題,分析了問題產(chǎn)生的原因,論述了教學(xué)改革的必要性,探討了教學(xué)中如何提高學(xué)生積極性、教學(xué)方法和手段等幾個方面的教學(xué)改革問題。張敏霞[3]根據(jù)當(dāng)前大學(xué)生的具體情況,針對如何有效地進(jìn)行程序設(shè)計語言課程的教學(xué),提高學(xué)生的程序設(shè)計能力和計算機素質(zhì)提出了幾點具體的措施。殷秀云[4]指出傳統(tǒng)的C語言程序設(shè)計課程的授課方式和考核方式存在一定的局限性,進(jìn)一步加大了學(xué)生掌握C語言編程方法的難度。因此,如何改變這種現(xiàn)狀,以適應(yīng)不斷發(fā)展的社會的需要,已經(jīng)是一個亟待解決的問題。馬杰等人[5]針對C語言教學(xué)中存在的若干問題,提出了從任務(wù)驅(qū)動、培養(yǎng)學(xué)生興趣、改革教學(xué)內(nèi)容和方法、加強實驗教學(xué)環(huán)節(jié)及改革考核機制五個方面進(jìn)行教學(xué)改革,以提高學(xué)生的編程能力,變被動學(xué)習(xí)為主動學(xué)習(xí),培養(yǎng)自學(xué)的能力。謝競博[6]從教學(xué)目的、教材選擇、教學(xué)方法、實踐教學(xué)及考核方式等方面,闡述了它們與教學(xué)效果的關(guān)系,詳細(xì)分析了目前教學(xué)中存在的一些普遍問題的成因,并從幾個方面分別提出了一些可行的改革建議。陳婷[7]論述了在應(yīng)用型本科C語言程序設(shè)計教學(xué)實踐中,根據(jù)應(yīng)用型本科教育培養(yǎng)要求,對課程合理定位,采用“階梯式”、“案例式”課堂教學(xué)方法,以“項目驅(qū)動式”實踐教學(xué)為核心,同時搭建多種自主學(xué)習(xí)平臺,采用更科學(xué)和完善的考核方式,較好地兼顧了學(xué)生的不同需求,激發(fā)了學(xué)生的學(xué)習(xí)積極性。

劉三滿[8]結(jié)合學(xué)生的學(xué)習(xí)心理和認(rèn)知規(guī)律,分析了C語言教學(xué)問題的主客觀原因,提出了“先過程,后對象”的教學(xué)理念,從教材建設(shè)、教學(xué)內(nèi)容安排上闡述了教學(xué)內(nèi)容的具體組織實施過程,從教學(xué)思路、教學(xué)觀念、教學(xué)手段幾方面探討了教學(xué)方法的改革。謝中科[9]闡述了C語言程序設(shè)計課程的教學(xué)改革與實踐,提出了通過激發(fā)大學(xué)生的學(xué)習(xí)興趣、創(chuàng)新熱情、教學(xué)互動等手段來建立大學(xué)生的編程思想,培養(yǎng)大學(xué)生的程序設(shè)計能力和創(chuàng)新意識。通過課程設(shè)計,培養(yǎng)大學(xué)生運用C語言解決實際問題的能力和創(chuàng)新能力。劉曉鋒等人[10]從教師、學(xué)生和教學(xué)內(nèi)容等方面介紹了在《C語言程序設(shè)計》課程建設(shè)中,以程序設(shè)計和實驗為主,更新教學(xué)內(nèi)容,改革傳統(tǒng)的授課方式的探索,闡述了注重能力培養(yǎng),提高學(xué)生的學(xué)習(xí)興趣,充分調(diào)動學(xué)生的主動性、創(chuàng)造性的重要意義。

3.改革措施

前面部分,學(xué)生們針對C語言課程設(shè)計指出了一些缺點,同時提出了一些好的建議,在本部分將有針對性地提出一些改進(jìn)的措施:(1)關(guān)于課程設(shè)計時間安排的改進(jìn):將C語言課程設(shè)計的開課時間定在學(xué)生學(xué)完C語言之后的下一個學(xué)期初。(2)關(guān)于課堂教學(xué)方面的改進(jìn):任課教師申請一個QQ或者微信群,在學(xué)校正式放假前,任課教師通過該群把課程設(shè)計的題目發(fā)送到每個學(xué)生的手中。下學(xué)期開學(xué)后的前幾周進(jìn)行課程設(shè)計的集體輔導(dǎo),然后進(jìn)行答辯驗收。任課教師可以將沒講完的課程內(nèi)容及對課程設(shè)計題目的大體梳理都錄制成視頻,然后將該視頻文件上傳到群文件里供學(xué)生們分享。群是實現(xiàn)師生互動的一個最重要的媒介,借助它可以突破時間和空間的限制。任課教師在放假前將題目發(fā)送到每個學(xué)生手里的一個最大好處是:學(xué)生們可以利用假期里的大量時間,充分地思考和準(zhǔn)備這些課程設(shè)計題目。(3)關(guān)于題目方面的改進(jìn):允許學(xué)生自由命題,但是需要任課教師最終把關(guān),以決定該命題是否適合作為課程設(shè)計的題目。此外,任課教師也可以考慮讓企業(yè)幫助出題。

前面學(xué)生們提出“編譯錯誤不好發(fā)現(xiàn)、也不好修改”的問題,筆者認(rèn)為可以通過下面的方法進(jìn)行解決:第一,首先告訴學(xué)生這是C語言的特點之一:語法限制不太嚴(yán)格,程序設(shè)計自由度大。一般的高級語言語法檢查比較嚴(yán),能檢查出幾乎所有的語法錯誤,而C語言允許程序編寫者有較大的自由度,因此放寬了語法檢查?!跋拗啤迸c“靈活”是一對矛盾,限制嚴(yán)格,就失去靈活性;而強調(diào)靈活,就必然放松限制。第二,教會學(xué)生進(jìn)行單步(Step Through)調(diào)試、設(shè)置斷點(Breakpoint)等調(diào)試程序的技巧,必要時還可以通過額外添加一些輸出語句輔助進(jìn)行程序調(diào)試。第三,任課教師將常見的編譯出錯信息進(jìn)行匯總,然后上傳到群文件里供學(xué)生分享。其實對編譯出錯信息進(jìn)行總結(jié),不如直接告訴學(xué)生記住C語言的一些專業(yè)術(shù)語,表1中列出了其中的一些,相信這對學(xué)生調(diào)試程序?qū)鸬胶艽蟮膸椭饔?。另外,還要告訴學(xué)生從一開始就要形成良好的編程風(fēng)格,比如適當(dāng)?shù)靥砑幼⑨專–omment),程序要有縮進(jìn)(Indent),給變量、函數(shù)、數(shù)據(jù)結(jié)構(gòu)等起名字時要做到見名知意等。

4.結(jié)語

從一份C語言課程設(shè)計的問卷調(diào)查入手,筆者根據(jù)學(xué)生指出的缺點和提出的建議對該課程進(jìn)行了嘗試性的改革,分別從課程設(shè)計的時間安排方面、課堂教學(xué)方面及課程設(shè)計的命題方面進(jìn)行了改革,筆者相信這些改革措施一定會取得很好的教學(xué)效果。另外,筆者還對學(xué)生反映比較多的問題“編譯錯誤不好發(fā)現(xiàn)、也不好修改”提供了很好的解決方案。將按照文中提出的一些觀點編寫《C語言課程設(shè)計》一書,該書將嚴(yán)格貫徹執(zhí)行講練結(jié)合的原則,對課程設(shè)計過程中可能涉及各個知識點通過舉例子的方式進(jìn)行講解,例子的選擇標(biāo)準(zhǔn)是不僅能說明問題而且要求最簡單。

c語言課程設(shè)計論文:表現(xiàn)性評價在C語言課程設(shè)計中的構(gòu)建方法

摘 要 表現(xiàn)性評價又被稱為“基于表現(xiàn)的評價”、“真實性評價”。表現(xiàn)性評價是根據(jù)學(xué)生實際完成一項特定任務(wù)或工作的表現(xiàn)而做出評價,即是從學(xué)生實際的行為表現(xiàn)來評價。目的是評價學(xué)生整體性的學(xué)習(xí)成果,通過解決問題的實際歷程,經(jīng)發(fā)現(xiàn)問題、觀察、提出假設(shè)、推理、控制變量、測量、歸納、詮釋資料、研究判斷做出決定,這整個過程都是屬于表現(xiàn)性測驗的評價范圍。本文以C語言課程設(shè)計為例討論如何針對實踐性較強的課程構(gòu)建表現(xiàn)性評價。

關(guān)鍵詞 表現(xiàn)性評價 量規(guī) 課程設(shè)計

1構(gòu)建表現(xiàn)性評價基本思路

構(gòu)建表現(xiàn)性評價就是制定評價目標(biāo)、選擇評價內(nèi)容、開發(fā)和設(shè)計評價方法的,還包括評價者的參與、選擇評價時間和場所、記錄、收集和整理評價信息的,以及制定評價標(biāo)準(zhǔn)和表現(xiàn)標(biāo)準(zhǔn)等。依據(jù)這樣的開發(fā)步驟,對C語言課程設(shè)計表現(xiàn)性評價的設(shè)計和實施做出了整體規(guī)劃,該設(shè)想的總體思路如下圖所示:

2表現(xiàn)性評價目標(biāo)的制定

學(xué)習(xí)目標(biāo)是課程學(xué)習(xí)活動的出發(fā)點和歸宿,它指導(dǎo)教與學(xué),向其他人傳達(dá)教學(xué)意圖,并提供評價學(xué)生學(xué)業(yè)的指導(dǎo)意見,是評價學(xué)生的重要依據(jù)。表現(xiàn)性評價的評價目標(biāo)和課程的培養(yǎng)目標(biāo)是一致的。在評價之前只有清晰的知道C語言課程要培養(yǎng)什么樣的學(xué)生,才能把握好教學(xué)與評價的方向,最終達(dá)成目標(biāo)。

C語言程序設(shè)計是一門典型的具有操作性和實踐性特點的計算機科學(xué)課程。該課程的學(xué)習(xí)目標(biāo)體系包括下列內(nèi)容:

(1)知識類目標(biāo):理解并掌握課程要求的基本知識,加深對已學(xué)知識的理解,進(jìn)一步提高原有技能;在熟練掌握陳述性知識的同時,更加注重對知識的應(yīng)用。

(2)能力類目標(biāo):培養(yǎng)學(xué)生的創(chuàng)新意識、刨造思維能力和動手實踐能力;培養(yǎng)學(xué)生信息意識和主動獲取信息,處理信息的能力;培養(yǎng)學(xué)生的群體意識和學(xué)會溝通與合作交往的能力;培養(yǎng)問題意識和獨立發(fā)現(xiàn)問題、提出問題、解決問題的能力;培養(yǎng)和提高管理能力等。

(3)情感類目標(biāo):現(xiàn)代學(xué)習(xí)觀、科學(xué)精神和態(tài)度、社會責(zé)任感和使命感和交往能力等。課程設(shè)計的學(xué)習(xí)目標(biāo)在課程學(xué)習(xí)目標(biāo)的基礎(chǔ)之上,更強調(diào)實踐能力的提高,培養(yǎng)計算機程序設(shè)計的能力和素質(zhì),以及思維方法。經(jīng)上述分析,與課程學(xué)習(xí)目標(biāo)相對應(yīng),課程設(shè)計的表現(xiàn)性評價目標(biāo)也應(yīng)包含三個維度:對知識習(xí)得的評價、對能力的評價和對情感態(tài)度價值觀的評價。對上述三方面的評價目的具體描述如下表所示。

3選擇表現(xiàn)性評價任務(wù)

評價任務(wù)指的是一種與教學(xué)目標(biāo)緊密相連的,而且能夠為學(xué)生創(chuàng)造展示自己進(jìn)步與能力的機會的一種具體的行為,能反映現(xiàn)實生活中的活動、表現(xiàn)和挑戰(zhàn)的任務(wù),建立在學(xué)習(xí)與評價的聯(lián)系基礎(chǔ)之上,考慮學(xué)生的興趣和能力。C語言課程設(shè)計任務(wù),更加突出應(yīng)用性和實用性,拓展知識面。通過課程設(shè)計,進(jìn)一步熟悉掌握數(shù)據(jù)類型、分支控制、循環(huán)控制、函數(shù)的定義及調(diào)用、結(jié)構(gòu)體及數(shù)組、指針、文件操作、編譯預(yù)處理等知識;達(dá)到系統(tǒng)理解、綜合運用課程知識的學(xué)習(xí)目標(biāo);學(xué)會用C語言程序解決實際問題的方法;掌握程序的局部測試、調(diào)試方法,建立程序系統(tǒng)測試、調(diào)試的基本概念和思想,學(xué)會較大程序的系統(tǒng)測試、調(diào)試方法。

一般的C語言課程設(shè)計項目包括小型系統(tǒng)設(shè)計、圖形圖像設(shè)計和游戲程序設(shè)計基本過程包括以下6個步驟:

3.1程序的功能設(shè)計

功能設(shè)計是課程設(shè)計的第一個環(huán)節(jié),其任務(wù)是根據(jù)課程設(shè)計題目的描述和要求,確定程序要實現(xiàn)的功能,并把功能劃分為不同的層次,確定各層功能的上下級關(guān)系,然后繪制出分級描述的程序功能框圖。

3.2程序的數(shù)據(jù)設(shè)計

程序的數(shù)據(jù)設(shè)計主要包括對以下各類數(shù)據(jù)進(jìn)行設(shè)計:對程序中用到的主要數(shù)據(jù)確定數(shù)據(jù)類型;對程序中用到的結(jié)構(gòu)體數(shù)據(jù)定義其結(jié)構(gòu)類型;定義程序中使用到的全局變量、外部變量等;定義程序中通用的符號常量;確定文件的數(shù)據(jù)類型,如二進(jìn)制文件、文本文件等。

3.3程序的函數(shù)設(shè)計

一個綜合性的程序,需要設(shè)計若干個函數(shù)。各個函數(shù)功能各異,使用的層次也不盡相同。為了使總體設(shè)計協(xié)調(diào)有序的進(jìn)行,需要在程序編碼之前,對主要的函數(shù)做出預(yù)先設(shè)計,即所謂的函數(shù)設(shè)計。程序的函數(shù)設(shè)計包括函數(shù)的功能設(shè)計和函數(shù)調(diào)用設(shè)計兩個方面。

3.4函數(shù)編程及調(diào)試

函數(shù)編程及調(diào)試是實現(xiàn)程序功能的核心階段,函數(shù)編程及調(diào)試是實現(xiàn)程序功能的核心階段,需要注意以下問題:課程設(shè)計具有一定的綜合性,其程序通常由多個函數(shù)構(gòu)成,每個函數(shù)都有獨立的功能,實現(xiàn)特定的操作;有些函數(shù)之間有調(diào)用和被調(diào)用的關(guān)系,在進(jìn)行函數(shù)設(shè)計時需要注意順序問題,有點函數(shù)先設(shè)計,有點函數(shù)后設(shè)計,而沒有調(diào)用關(guān)系的函數(shù)可以并列設(shè)計;程序設(shè)計是一個循序漸進(jìn)的過程。有點函數(shù)在程序設(shè)計前的函數(shù)設(shè)計階段就被考慮到了,而有的函數(shù)是在程序設(shè)計過程中因需要才產(chǎn)生的。但無論哪個函數(shù),都會經(jīng)歷由簡單到功能完善定型的過程。

3.5整體調(diào)試

整體調(diào)試是程序設(shè)計的必要階段,是在前期程序設(shè)計調(diào)試基礎(chǔ)上進(jìn)行的基本過程。需要設(shè)計準(zhǔn)備一個較大規(guī)模的數(shù)據(jù)集,按照課程設(shè)計題目的功能要求,對組裝完成的程序逐項進(jìn)行功能測試和調(diào)試,直至確認(rèn)程序達(dá)到了設(shè)計目標(biāo)為止。

3.6設(shè)計總結(jié)

設(shè)計總結(jié)是課程設(shè)計的最終階段,通過對課程設(shè)計的各個過程進(jìn)行系統(tǒng)全面地總結(jié),按照指導(dǎo)教師的具體要求,形成課程設(shè)計報告。

4建立量規(guī)

量規(guī)(Rubric)是一種結(jié)構(gòu)化的定量評價標(biāo)準(zhǔn)。往往是從與評價目標(biāo)相關(guān)的多個方面詳細(xì)規(guī)定評級指標(biāo),具有操作性好、準(zhǔn)備性高的特點。量規(guī)是評價的工具,學(xué)生的作品、成長記錄、學(xué)習(xí)成果或者學(xué)習(xí)過程中的其他表現(xiàn)(行為、認(rèn)知、態(tài)度)都是量規(guī)的評價對象。同時量規(guī)也是一個教學(xué)工具和學(xué)習(xí)工具,可以指導(dǎo)教師的教學(xué)和學(xué)生的學(xué)習(xí)過程,模糊了教學(xué)、學(xué)習(xí)和評價之間的界限,評價工具也從而成為了教學(xué)工具和學(xué)習(xí)工具。量規(guī)設(shè)計的出發(fā)點和著落點是指標(biāo)和等級地選擇與確立。設(shè)計評價量規(guī)就是,以課程、教學(xué)、評價三者統(tǒng)一,突出學(xué)生主體性和促進(jìn)學(xué)生發(fā)展的評價目的為設(shè)計原則,在明確學(xué)習(xí)目的和目標(biāo)的基礎(chǔ)上,列出評價指標(biāo)和制定評價等級。對C語言課程設(shè)計內(nèi)容加以分析,制定出課程設(shè)計過程中的幾個量規(guī)。

4.1 C語言課程設(shè)計任務(wù)設(shè)計量規(guī)(教師)

該量規(guī)主要是對學(xué)生在對課程設(shè)計任務(wù)進(jìn)行分析、提出解決方案、制定完成任務(wù)的相應(yīng)計劃的表現(xiàn)進(jìn)行評價時所使用的量規(guī)。該量規(guī)中的評價項目主要包括問題分析、任務(wù)劃分、程序架構(gòu)等。根據(jù)評價項目完成情況好壞不同給出不同分值的具體表現(xiàn),在評價過程中對照量規(guī)評價學(xué)生的表現(xiàn)。

4.2小組合作量規(guī)(教師)

該量規(guī)是由教師為各個小組整體表現(xiàn)進(jìn)行評價的量規(guī)工具,小組的表現(xiàn)應(yīng)包括幫助、傾聽、參與、勸說、問題及尊重等幾個方面,教師根據(jù)對各小組的觀察情況,對各項評分,并計算總分,以此作為小組合作表現(xiàn)的成績。

4.3小組成員相互關(guān)系表現(xiàn)量規(guī)(學(xué)生自評,互評)

小組成員之間的關(guān)系是否融洽,合作是否愉快,常常對整體工作效果有著至關(guān)重要的作用,因此,該量規(guī)也就比不可少了。該量規(guī)是從小組成員之間相互觀察到角度來制定的,其主要評價項目包括合作、參與、態(tài)度、獨立性、交流和應(yīng)答等,每個小組成員都要為其他小組成員打分,計算評價分。這樣每個同學(xué)都可以看到自己在本小組中和其他成員間的關(guān)系如何,在以后的人際交往當(dāng)中即可吸取經(jīng)驗,更好地與他人融洽相處。

5總結(jié)

評價與教學(xué)是一個硬幣的兩面,雖然兩者有不同的“圖案”,但總是不可分割的共同體。目前,在教育領(lǐng)域中,我們面臨的許多真實困難都來與教學(xué)和評價的分離。如果我們準(zhǔn)備可信的方式評價學(xué)生,真正服務(wù)于促進(jìn)學(xué)生深入學(xué)習(xí)的最終目標(biāo),教學(xué)與評價必將再次結(jié)合。

c語言課程設(shè)計論文:電子類專業(yè)C語言課程設(shè)計教學(xué)方法的探討

【摘 要】本文就三本院校工科電子類專業(yè)的程序設(shè)計語言的教學(xué)進(jìn)行了探討,針對三本學(xué)生基礎(chǔ)偏弱,自我能動性稍顯不足的特點,將程序設(shè)計的教學(xué)分成了兩個相關(guān)聯(lián)的部分,理論知識的講解和動手環(huán)節(jié)的實踐,并對實踐環(huán)節(jié)中的兩個部分――分散知識點和綜合應(yīng)用分別給出了設(shè)計思路。

【關(guān)鍵詞】C語言;理論教學(xué);實踐教學(xué);課程設(shè)計

目前各個高等學(xué)校尤其是三本工科院校中,所選用的編程教學(xué)語言,由以前的面向過程化的語言Pascal語言向C語言過渡,這個也正是C語言廣泛使用的一個例證,C語言作為一個對底層有較強控制能力的語言,對于初學(xué)者來說,還是不容易掌握。為了編程語言的教學(xué),各個學(xué)校都在探索適合自己學(xué)生的教學(xué)方式。本文針對電子類的嵌入式方向?qū)I(yè)的特殊性,采用了將理論和實踐分開進(jìn)行的方式,這樣做,可以讓學(xué)生對程序設(shè)計語言由淺入深地接受,在這個過程中,很自然地有純粹的理論過度到實踐編程的環(huán)節(jié)。

一、程序設(shè)計語言的教學(xué)思路

嵌入式方向C語言的教學(xué),偏向于嵌入式底層的應(yīng)用,在課程的安排上,結(jié)合三本院校學(xué)生的特點,將理論和實踐分別安排的兩個學(xué)期完成,第一個學(xué)期,主要是針對理論學(xué)習(xí),第二個學(xué)期,開設(shè)課程設(shè)計的實踐環(huán)節(jié)。在理論教學(xué)環(huán)節(jié)中,側(cè)重點是理論的講解,可以不必太在乎細(xì)微的語法細(xì)節(jié),而將主要精力放在程序設(shè)計語言的思想上。作為教師在講授C語言理論知識時,只要將過程化C語言的重點思想交代清楚了就可以了,在教學(xué)內(nèi)容的安排上,一定要將結(jié)構(gòu)體,指針和文件的相關(guān)知識進(jìn)行講解,這也決定了在理論學(xué)時的環(huán)節(jié)中,無法對個別函數(shù)的細(xì)節(jié)進(jìn)行展開的原因,而這些理論環(huán)節(jié)的教學(xué),學(xué)時可以控制在45~48之間。

二、C語言課程設(shè)計教學(xué)內(nèi)容的設(shè)計

在教學(xué)內(nèi)容上,由于實踐課程的特殊性結(jié)合程序設(shè)計的特點,實踐環(huán)節(jié)可以用兩種方式完成,以便和前面的理論學(xué)時的知識進(jìn)行銜接,這兩個環(huán)節(jié)分別是單個知識點的聯(lián)系和綜合的課程設(shè)計的獨立完成。

1. 單個知識點的實踐

就單個知識點而言,都以專題練習(xí)的方式進(jìn)行,在講授的過程中,結(jié)合工程中的使用,每個專題,可以設(shè)計出獨立的實踐報告內(nèi)容,程序設(shè)計語言的教學(xué),除了掌握基本的語法規(guī)則之外,最重要的是同時要會調(diào)試程序,也就是要掌握調(diào)試程序的技巧。所以,課堂實踐環(huán)節(jié)的內(nèi)容的設(shè)計,不但包括了能夠?qū)懗龀绦虼a,而且還要會應(yīng)用調(diào)試工具對程序進(jìn)行調(diào)試,下面就是本人在進(jìn)行數(shù)組,指針和結(jié)構(gòu)體的綜合專題中進(jìn)行的課堂任務(wù)的設(shè)計:

任務(wù)描述:從鍵盤錄入N個學(xué)生的信息(包括姓名,學(xué)號,成績),統(tǒng)計出平均分,并將成績最低分,最高分的學(xué)生的信息輸出。

該課堂實踐內(nèi)容設(shè)計的思路,主要是要學(xué)生掌握結(jié)構(gòu)體的定義方法,理解數(shù)組的元素可以是結(jié)構(gòu)體變量,同時要牢固掌握指針的本質(zhì)就是內(nèi)存地址,通過指針可以方便地操作用戶空間的任何數(shù)據(jù)。

通過上面的實踐內(nèi)容,結(jié)合筆者的實際操作,學(xué)生在記錄了指針地址的變化過程之后,不但掌握了查看內(nèi)存的調(diào)試方法,而且對指針的本質(zhì)有了感性的認(rèn)識。

2. 綜合課程設(shè)計

可以選取有一定規(guī)模的小系統(tǒng)讓學(xué)生完成,在筆者的教學(xué)中,幾年來了均采用了學(xué)生信息教學(xué)管理系統(tǒng)進(jìn)行授課,隨著經(jīng)驗的增加,這個小系統(tǒng)對于學(xué)生而言,有很好的鍛煉價值。

這個環(huán)節(jié)的實踐,可以不占用教學(xué)計劃學(xué)時,而留給學(xué)生課后組隊或者獨立調(diào)試完成,這是因為,學(xué)生通過前面分散的專項知識點的練習(xí),已經(jīng)學(xué)會了怎樣調(diào)試程序,而且,各個知識點通過練習(xí)之后,已經(jīng)掌握得差不多了,這個綜合任務(wù),就是為了他們能夠融匯以前所學(xué)的各個知識點。所以布置給學(xué)生之后,就可以在適當(dāng)?shù)臅r候進(jìn)行答辯考核了。

三、C語言課程教學(xué)課堂組織形式的比較

作為實踐課程,其教學(xué)有特殊性,筆者通過三個學(xué)期的探索,分別采用了兩種課時組織方式,現(xiàn)在對兩種方式的優(yōu)缺點分別進(jìn)行比對:

分散課時方式:就是按照理論課的安排,周學(xué)時2-4個學(xué)時進(jìn)行安排。

周末集中方式:每個周末安排16個學(xué)時,進(jìn)行集中訓(xùn)練。

對于分散授課的方式,學(xué)生的出勤率低于集中的方式,對于實踐性質(zhì)的課程,這種集中的方式進(jìn)行授課,學(xué)生的出勤率會高于普通的方式。就學(xué)生課堂任務(wù)的完成情況而言,兩者基本上都能按照要求完成要求的85%以上的內(nèi)容。就課程銜進(jìn)行考量,根據(jù)實際操作來看,集中方式明顯優(yōu)于分散的方式,這個記憶的遺忘興致相符合。從考核結(jié)果來看,分散方式所參與的三屆學(xué)生中,要優(yōu)于集中方式,這個結(jié)果的出現(xiàn),有部分原因是由于考核時間和上課時間之間的空隙拉的太長了。下次的安排,將會安排在課程結(jié)束之后的一周時間進(jìn)行,這留出來的一周時間,就是讓學(xué)生來獨立完成自己的任務(wù)。

本文對三本學(xué)校中開展C課程設(shè)計的思路進(jìn)行探討和實踐,提出了將C語言的教學(xué)分為理論部分和實踐部分的思路,并把實踐部分的練習(xí)分為專題知識練習(xí)和綜合獨立完成的任務(wù)兩個部分,在課堂的實踐中有較好的效果。最后論文還對課程設(shè)計的學(xué)時組織方式進(jìn)行不同方式的實踐嘗試,為找到適合三本學(xué)生C語言教學(xué)的方法提供了一定的參考對象。

c語言課程設(shè)計論文:項目教學(xué)法在C語言課程設(shè)計中的研究與應(yīng)用探討

摘 要 項目教學(xué)是要通過一個較為完整的項目進(jìn)行教學(xué)活動,其主要目的是為了能把學(xué)生融入到有意義的任務(wù)中,并充分發(fā)揮學(xué)生的創(chuàng)造潛能,提高解決實際問題的能力。通過對“C語言課程設(shè)計”課堂的教學(xué),用項目教學(xué)法進(jìn)行教學(xué),取得了較為滿意的教學(xué)成果。對于如何利用選擇項目、實施項目、評估項目,進(jìn)行了初步探究,并介紹了項目教學(xué)中需要注意的事項,為推廣項目式教學(xué)法運用,提供了一些借鑒。

關(guān)鍵詞 項目教學(xué) C語言 教學(xué)實施 教學(xué)成果

1 開設(shè)的目的和意義

較之于高等教育而言,高等職業(yè)教育無論在目標(biāo)性還是教學(xué)的側(cè)重點上,均存在著較大的差異性,后者通過對學(xué)生進(jìn)行培養(yǎng),畢業(yè)后可直接參加具體的工作,因其已經(jīng)熟練的掌握了操作技能和技巧,所以能夠獨立完成工作任務(wù)。根據(jù)高職院校學(xué)生就業(yè)指導(dǎo)意見,當(dāng)前高等職業(yè)教育教學(xué)應(yīng)面向生產(chǎn)、管理以及建設(shè)和服務(wù)等一線行業(yè),為這些部門和工作崗位輸送人才,以下得去、用得上和留得住為基本原則,培養(yǎng)實踐能力較強具有較好的職業(yè)道德的高技能人才。因此,要加強實踐性課程教學(xué),對保證人才培養(yǎng)質(zhì)量顯得尤為重要。

我院為了貫徹這種精神,立足區(qū)域經(jīng)濟發(fā)展現(xiàn)實情況,對專業(yè)課程進(jìn)行了靈活的調(diào)整,其中以就業(yè)為主要導(dǎo)向,不斷加快應(yīng)用課程設(shè)計與創(chuàng)新。就當(dāng)前我院工作實際情況來看,以由淺入深和逐漸深化為主要教學(xué)規(guī)律,并在此基礎(chǔ)上構(gòu)建了教學(xué)三層次、四環(huán)節(jié)之實踐課程系統(tǒng)。實踐教學(xué)的三個層次是:基本技能,專業(yè)拓展,綜合創(chuàng)新;四個環(huán)節(jié)是:實驗培訓(xùn),實驗實訓(xùn),設(shè)計和課外實踐。

比如,C語言課程,作為信息類專業(yè)的基礎(chǔ)課程,程序設(shè)計都是在課程教學(xué)完成后進(jìn)行,共有四十個學(xué)時,歷時兩周。為學(xué)生提供一個動手、動腦、獨立實踐的機會。

2 項目教學(xué)法簡介

項目教學(xué)法是基于構(gòu)建主義教學(xué)理論的一種教與學(xué)的模式。瑞士著名的心理學(xué)家皮亞杰認(rèn)為:知識不是通過教師傳授得到的,而是學(xué)生在一定的情境下,借助他人的幫助,利用必要的學(xué)習(xí)資料,通過意義構(gòu)建的方式獲得的。美國項目管理專家約翰·賓認(rèn)為:項目是要在一定時間里,在預(yù)算規(guī)定的范圍之內(nèi)需要達(dá)到預(yù)定質(zhì)量水平的一項一次性任務(wù)。

項目教學(xué)法是通過實施一個完整的項目進(jìn)行教學(xué)活動,將學(xué)生融入到任務(wù)的過程中,讓學(xué)生進(jìn)行主動地學(xué)習(xí),自主性地進(jìn)行知識構(gòu)建,在課堂教學(xué)中把理論與實踐教學(xué)有機的結(jié)合起來,能充分地發(fā)揮學(xué)生的創(chuàng)造潛能,提高學(xué)生解決實際問題的能力。因此,在實際教學(xué)過程中,教師要將需要解決的問題或需要完成的任務(wù)以項目的形式交給學(xué)生,讓學(xué)生在老師的指導(dǎo)下,用工作小組的方式,由學(xué)生自己按照實際的工作程序,共同制定計劃,共同或者分工完成整個項目。在項目教學(xué)過程中,學(xué)習(xí)過程稱為人人都參與的實踐過程,注重的不是結(jié)果,而是整個項目完成的過程。

對于高等職業(yè)院校的技術(shù)教育教學(xué)而言,項目主要是指生產(chǎn)或者制造有應(yīng)用價值的具體產(chǎn)品之任務(wù)。從技術(shù)領(lǐng)域來看,多數(shù)小產(chǎn)品、復(fù)雜產(chǎn)品等模型制作均可作為具體的項目,比如信息類專業(yè)開展網(wǎng)站建設(shè)、計算機組裝以及建設(shè)局域網(wǎng)項目,電子類專業(yè)可開展報警器制作、加點組裝等項目。

3 其基本特征

項目教學(xué)法與傳統(tǒng)教學(xué)法相比具有較大的差別。主要表現(xiàn)在改變了傳統(tǒng)教學(xué)中的三個中心:以教師為中心轉(zhuǎn)變?yōu)橐詫W(xué)生為中心;以課本為中心轉(zhuǎn)變?yōu)橐皂椖繛橹行模灰哉n堂為中心轉(zhuǎn)變?yōu)橐詫嶋H經(jīng)驗為中心。項目教學(xué)法具有以下的特點:

實踐性:項目源于企業(yè),項目的主題與真實世界是緊密聯(lián)系的,由淺入深,選擇的項目具有典型性和使用性;自主性:提供學(xué)生根據(jù)個人興趣進(jìn)行選擇的內(nèi)容和展示的機會,讓學(xué)生進(jìn)行自主的學(xué)習(xí),從而有效地促進(jìn)了其創(chuàng)造力的發(fā)展;發(fā)展性:長期的項目結(jié)合,構(gòu)成了實現(xiàn)教學(xué)目標(biāo)的認(rèn)知過程;評價的特殊性:項目性教學(xué)更注重的是學(xué)生在項目活動中能力的發(fā)展過程,評測的內(nèi)容包括學(xué)生參加各項活動的表現(xiàn),避免了傳統(tǒng)的成績定好壞的弊端。評測可以采用自評、小組評、教師綜合評等方法、教師只有明確并抓住其教學(xué)的特點,才能更好地完成教學(xué)目標(biāo)。

4 其在C語言課程設(shè)計中的實施

為更好進(jìn)行課程設(shè)計教育教學(xué),在多次實踐基礎(chǔ)上,總結(jié)出具體項目實施中主要注意的兩個方面:

其一,教學(xué)內(nèi)容主要事項。前導(dǎo)課因教學(xué)課時的影響,所以教師為趕教學(xué)進(jìn)度,對結(jié)構(gòu)體、基本操作以及共用體等知識的介紹不充分,也不夠完善,更談不上輔助實例進(jìn)行講解。對此,要根據(jù)學(xué)生對這些知識點的掌握程度,利用5個學(xué)時,實施區(qū)別式、輔導(dǎo)式的教學(xué)。

其二,由于學(xué)生對于項目管理的知識較少,針對此種情況,可以采用兩個階段實施補課行動。第一個階段,安排曾經(jīng)做得比較好的學(xué)生進(jìn)行講解相關(guān)經(jīng)驗;第二階段,為項目實施階段,教師應(yīng)該針對學(xué)生發(fā)生的問題,及時給與指導(dǎo),直到學(xué)生弄懂為止。

總之,通過此種教學(xué)方法,教師在觀察學(xué)生、幫助學(xué)生的過程中,既開闊了視野,也提高了專業(yè)水平。項目教學(xué)法是師生共同完成項目、共同取得進(jìn)步的好方法。

c語言課程設(shè)計論文:獨立學(xué)院C語言課程設(shè)計教學(xué)實踐與探索

摘要: C語言課程設(shè)計是一門實踐性非常強的課程。本文主要討論了獨立學(xué)院C語言課程設(shè)計的教學(xué)。在教學(xué)過程中,針對獨立學(xué)院學(xué)生的特點,設(shè)計了一套行之有效的教學(xué)流程。學(xué)生在教師指導(dǎo)下全程參與完整的項目開發(fā),教學(xué)效果良好。最后結(jié)合課程實際情況,分析了教學(xué)過程中存在的問題,并提出了相應(yīng)的解決辦法。

關(guān)鍵詞: 課程設(shè)計;教學(xué)改革;項目教學(xué)法;軟件開發(fā)

0 引言

獨立學(xué)院是我國高等教育辦學(xué)體制改革創(chuàng)新的重要成果。為了造就適應(yīng)企業(yè)需求的高素質(zhì)應(yīng)用型人才,結(jié)合獨立學(xué)院學(xué)生基礎(chǔ)水平,在獨立學(xué)院的教學(xué)工作中應(yīng)加強對學(xué)生實踐動手能力的培養(yǎng)。為此,在《C程序設(shè)計》理論教學(xué)及實驗教學(xué)的基礎(chǔ)上,我院針對非計算機專業(yè)學(xué)生開展了一項實踐教學(xué)環(huán)節(jié):C語言課程設(shè)計。此課程自開設(shè)以來,受到學(xué)生的廣泛歡迎。在做課程設(shè)計的過程中,同學(xué)們既融會貫通了C語言基本語法,同時又通過項目實戰(zhàn)切實提高了動手編程、調(diào)試程序的能力。對于學(xué)生來說,獨立完成一個完整的項目,帶來的成就感和自信心,有利于后續(xù)學(xué)習(xí)的開展。

1 C語言課程設(shè)計教學(xué)現(xiàn)狀與教學(xué)亮點

C語言課程設(shè)計開課時間為大一下學(xué)期,共計32學(xué)時,授課對象為電子科技大學(xué)成都學(xué)院微電子技術(shù)系本、??粕a槍虒W(xué)對象的差異,分別制定了專科、本科教學(xué)大綱,同時在多媒體課件的制作上,講求簡潔、美觀并突出教學(xué)重點。

盡管已經(jīng)學(xué)習(xí)過C語言,但多數(shù)同學(xué)在經(jīng)過一個學(xué)期之后,忘記大半,掌握的知識點零碎、構(gòu)不成系統(tǒng),所以在進(jìn)行項目開發(fā)之前,必須進(jìn)行C語言基礎(chǔ)知識的串講。在串講過程中,通過回顧已學(xué)內(nèi)容、演示典型例題,達(dá)到溫故知新的效果。這就要求教師精心準(zhǔn)備串講上機練習(xí)題。題目要有的放矢,同時又與后續(xù)項目開發(fā)有一定相關(guān)。數(shù)組、函數(shù)、指針、結(jié)構(gòu)體、文件操作,各布置一道綜合練習(xí)題目。這樣一步一個腳印地把項目開發(fā)之前的技術(shù)知識準(zhǔn)備工作做好。

1.1 教學(xué)過程設(shè)計合理 C課程設(shè)計整個教學(xué)過程如圖1所示,分為準(zhǔn)備、開發(fā)、匯報三個階段。為了杜絕部分同學(xué)對實驗課抱著蒙混過關(guān)的僥幸心理,要做好該課程的課前動員工作。課前動員工作主要體現(xiàn)兩個要點:一是敦促C語言基礎(chǔ)知識不扎實的同學(xué)重視概念和基礎(chǔ),因為沒有良好的基礎(chǔ),急于編程只會導(dǎo)致錯誤百出。二是使同學(xué)明確本門課程考核評分標(biāo)準(zhǔn),端正其學(xué)習(xí)態(tài)度,激發(fā)其學(xué)習(xí)熱情,為后續(xù)教學(xué)的開展做好準(zhǔn)備。自由分組以二至三人一組為宜,每組推選一名基礎(chǔ)好的同學(xué),擔(dān)任開發(fā)組長。組長帶領(lǐng)組員進(jìn)行自主選題、開發(fā)設(shè)計、書寫設(shè)計報告、參加答辯等工作。

1.2 題目選擇多樣化 選擇一個難度適中、具有一定的趣味性并與同學(xué)生活息息相關(guān)的題目是開展課程設(shè)計的首要任務(wù)。題目太難會嚴(yán)重打擊同學(xué)的自信心和積極性;題目簡單會導(dǎo)致同學(xué)對C語言不夠重視,學(xué)不到東西。進(jìn)過嚴(yán)格篩選,仔細(xì)比較,同時結(jié)合《C程序設(shè)計》課堂教學(xué)經(jīng)驗,歸納出適合學(xué)生現(xiàn)有水平的題目主要有兩大類:一是各種管理系統(tǒng),比如學(xué)生成績管理系統(tǒng)、運動會成績管理系統(tǒng)、圖書管理系統(tǒng)等;二是各類小游戲,比如貪吃蛇游戲、搬箱子游戲、掃雷游戲等。允許學(xué)生根據(jù)自己的興趣愛好自擬題目,但需經(jīng)過教師審查通過。

教師同時提供多個題目并簡單講解每個題目的設(shè)計需求、難度、涉及到的知識點以及完成后的代碼量等,供學(xué)生自由選擇。題目多樣性、難度階梯性帶來的效果有兩方面:一方面學(xué)生能選到自己感興趣,適合自己水平的題目;另一方面可以最大程度地避免互相抄襲等情況的發(fā)生。

考慮到獨立學(xué)院的學(xué)生總的來說編程基礎(chǔ)不夠扎實,為了讓同學(xué)盡快入門,明確到底要做什么,在需求分析階段,教師需要當(dāng)堂分別操作一個管理系統(tǒng)的程序以及一個小游戲程序,演示其功能。這樣一來學(xué)生可以對項目開發(fā)建立起直觀印象,同時對用C語言開發(fā)界面做到心里有數(shù)。

1.3 引導(dǎo)為主 課程設(shè)計過程中,學(xué)生的角色定位為初級開發(fā)人員。教師做為指導(dǎo)者對其具體開發(fā)過程進(jìn)行監(jiān)督指導(dǎo)。很多同學(xué)一遇到問題,就特別依賴?yán)蠋煟M蠋煄兔φ{(diào)試或者直接給出解決方法。針對同學(xué)提問,教師應(yīng)采取引導(dǎo)的方式,啟發(fā)同學(xué)獨立思考,而不直接給出問題的答案。同時鼓勵學(xué)生網(wǎng)上查閱相關(guān)文檔或者帖子,通過網(wǎng)絡(luò)解決問題。一段時間后,如果該同學(xué)還是不能自行解決,教師再給出解決方法。這樣做不但可以提高同學(xué)獨立分析問題、自主解決問題的能力,還可以鍛煉其與項目組其他同學(xué)合作交流并獲取新知識的能力。

對于同學(xué)提出的奇思妙想,教師應(yīng)予熱情的鼓勵。同學(xué)在開發(fā)過程中,能夠有自己的想法是一件好事,教師可以和同學(xué)探討其想法,并盡可能地幫助其付諸實踐。對于部分好學(xué)的同學(xué),教師可以通過介紹參考教材、推薦開發(fā)網(wǎng)站等,讓這一部分同學(xué)依照自己的興趣自學(xué)。

1.4 關(guān)注教學(xué)細(xì)節(jié) 學(xué)生水平參差不齊這一特點在獨立學(xué)院三本學(xué)生中體現(xiàn)的特別明顯,所以在教學(xué)過程中,不能搞“一刀切”。根據(jù)筆者的教學(xué)經(jīng)驗,同學(xué)中兩級分化情形嚴(yán)重,呈“啞鈴型”結(jié)構(gòu)。針對這一特點,結(jié)合非計算機專業(yè)對C語言能力的要求,在教學(xué)目標(biāo)的制定上,需要提高辨識度,按照“高、中、低”區(qū)分學(xué)生水平,對學(xué)生做階梯型的要求。

作為一門實驗上機課程,尤其需要保證教學(xué)時間的連貫性。時間太短,學(xué)生剛有思路就下課了,導(dǎo)致半途而廢;時間太長,學(xué)生長期呆在實驗室上一門課程導(dǎo)致疲勞,降低學(xué)習(xí)效率。經(jīng)過探索,以四節(jié)課為一大節(jié)課最為適宜。

1.5 考核全面 合理的評分機制有利于提高學(xué)生的學(xué)習(xí)積極性。作為注重動手能力的實踐實驗課,C語言課程設(shè)計的考核方法自然不能沿用理論課的考核方式。

獨立學(xué)院的培養(yǎng)方向是應(yīng)用型人才,要求學(xué)生將來進(jìn)入企業(yè)能夠快速融入項目團(tuán)隊,這就需要全面考核同學(xué)的動手能力、工程概念以及人品素質(zhì)。C課程設(shè)計的考核兼顧了團(tuán)隊與個人表現(xiàn),關(guān)注動手能力與基礎(chǔ)知識的考察。本門課程總分100分,各項具體分值分配如圖2所示。

課堂表現(xiàn)包括考勤、開發(fā)過程中的認(rèn)真程度、團(tuán)隊合作精神等方面。實驗報告寫作內(nèi)容主要包括:需求分析、系統(tǒng)設(shè)計框圖、關(guān)鍵算法實現(xiàn)等。通過書寫實驗報告,提高學(xué)生書面表達(dá)技巧,鍛煉其書寫開發(fā)文檔的能力。

在課程設(shè)計的最后,我們安排了項目答辯。答辯環(huán)節(jié)考核學(xué)生語言表達(dá)能力、臨場應(yīng)變能力以及對相關(guān)知識的理解,為同學(xué)提供了一個展示自我的舞臺。答辯過程分為三個環(huán)節(jié):演示講解環(huán)節(jié)、學(xué)生提問環(huán)節(jié)、教師提問環(huán)節(jié),每個環(huán)節(jié)各占10分。在演示講解環(huán)節(jié)中,首先由項目組長操作演示可執(zhí)行程序,并介紹各個組員的分工、開發(fā)過程中遇到的問題以及解決辦法、程序的創(chuàng)新點等。在學(xué)生提問環(huán)節(jié)和教師提問環(huán)節(jié)中,大家可以對自己感興趣的問題進(jìn)行提問,教師在此過程中需要作適當(dāng)引導(dǎo)。最后綜合各個環(huán)節(jié)得分,當(dāng)場給出每組答辯分?jǐn)?shù)。在答辯結(jié)束后,教師應(yīng)對表現(xiàn)良好的團(tuán)隊予以表揚和肯定。最后,要求同學(xué)上交實驗報告冊。

2 課程后期建設(shè)目標(biāo)及思考

為了在實踐中提高學(xué)生的綜合素質(zhì),達(dá)到C課程設(shè)計“動手、動腦、動嘴、動筆”的教學(xué)目標(biāo),在教學(xué)內(nèi)容的安排上尤其要突出以下幾點:

2.1 在教學(xué)過程中有意識地向?qū)W生灌輸軟件工程的思想、項目管理的相關(guān)知識。

2.2 在教學(xué)中應(yīng)注意培養(yǎng)學(xué)生養(yǎng)成良好的編程習(xí)慣。按照國內(nèi)知名公司的編程規(guī)范來做要求。

2.3 注重培養(yǎng)學(xué)生自學(xué)能力和獨立思考能力以及團(tuán)隊合作精神。

2.4 教學(xué)時間安排在實踐專周,這樣學(xué)生有整天的時間投入到項目開發(fā)過程中去,從而保證了教學(xué)效果的連續(xù)性。

3 總結(jié)

C課程設(shè)計從完成一個小項目出發(fā),全面增強了學(xué)生的動手能力,使學(xué)生在從事C程序開發(fā)時,能系統(tǒng)地考慮問題,合理安排項目進(jìn)度,熟悉開發(fā)過程,能有效地與他人合作和交往,同時培養(yǎng)了其工作責(zé)任心,為以后走上工作崗位打下了初步的基礎(chǔ)。

在C語言課程設(shè)計教學(xué)過程中,充分認(rèn)識到要讓作為初學(xué)者的學(xué)生,在短時間內(nèi)掌握并熟練使用C語言獨立完成項目,較難做到。作為教師,一定要認(rèn)真?zhèn)湔n,合理安排教學(xué)內(nèi)容,提供精簡的練習(xí)案例。同時在教學(xué)過程中以引導(dǎo)為主,激發(fā)學(xué)生的潛能,讓學(xué)生自主學(xué)習(xí)。實踐證明,課程設(shè)計結(jié)課后,絕大多數(shù)同學(xué)都對C語言編程產(chǎn)生了濃厚的興趣。

c語言課程設(shè)計論文:基于成果為本的《C語言綜合課程設(shè)計》教學(xué)改革探索與實踐

摘要: 本文提出了成果為本的教學(xué)改革實踐,通過研究課程的教學(xué)目標(biāo),轉(zhuǎn)換為學(xué)生的學(xué)習(xí)目標(biāo),根據(jù)學(xué)生的學(xué)習(xí)目標(biāo)列出可量化可考核的學(xué)習(xí)成果形式,根據(jù)學(xué)習(xí)成果設(shè)計教學(xué)內(nèi)容和教學(xué)活動,制定與學(xué)習(xí)成果相關(guān)的考核評價體系,根據(jù)考核結(jié)果改進(jìn)后續(xù)教學(xué),形成教學(xué)中的良性循環(huán)。

關(guān)鍵詞: 成果為本;C語言;綜合課程設(shè)計;教學(xué)改革

0 引言

《C語言綜合課程設(shè)計》是計算機相關(guān)專業(yè)的一門專業(yè)基礎(chǔ)課,實踐性較強,是學(xué)生在學(xué)習(xí)完《C語言程序設(shè)計基礎(chǔ)》課程后的一次全面綜合項目訓(xùn)練。這門課程的教學(xué)目標(biāo)是讓學(xué)生掌握基于結(jié)構(gòu)化的小型項目開發(fā)流程,其中包括功能分析、模塊劃分、算法設(shè)計、編碼實現(xiàn);掌握課程設(shè)計報告的撰寫,用軟件工程的思想來描述項目的開發(fā)過程。為了加深學(xué)生對C語言知識的綜合運用,切實提高學(xué)生的程序編寫能力,對《C語言綜合課程設(shè)計》課程教學(xué)方法進(jìn)行了改革。

1 教學(xué)中存在的問題

該課程教學(xué)效果的好壞直接影響后續(xù)專業(yè)課程的學(xué)習(xí),提高教學(xué)效果,增強學(xué)生的學(xué)習(xí)興趣,是我們這次教學(xué)改革的目標(biāo)。在本校該課程的以往教學(xué)中,存在以下問題:①課程人數(shù)較多,涉及計算機科學(xué)與技術(shù)、信息管理與信息系統(tǒng)、軟件工程、網(wǎng)絡(luò)工程四個專業(yè)的500多名學(xué)生,學(xué)生程序設(shè)計基礎(chǔ)差別較大,有針對性的教學(xué)比較困難;② 有些學(xué)生對課程重視程度不夠,不明確課程學(xué)習(xí)目標(biāo);③周課時為2,課程內(nèi)容較多,深入講解困難;④采用案例驅(qū)動法教學(xué),課內(nèi)主要進(jìn)行案例分析和問題討論,大量的編碼任務(wù)要求學(xué)生在課外完成,這對學(xué)生課外學(xué)習(xí)的主動性要求較高,同時老師的課外輔導(dǎo)壓力也很大;⑤考核方式采用大作業(yè)方式,不能很好地反映學(xué)生理論和實踐兩方面的學(xué)習(xí)效果。

2 基于成果為本的教學(xué)改革探討

成果為本的教育是“以人人都能學(xué)會為前提,以學(xué)生為中心、成果為導(dǎo)向而設(shè)計的”教育模式,強調(diào)能力培養(yǎng)和能力訓(xùn)練。該教學(xué)理念是20世紀(jì)90年代開始興起的一種教育模式,該教育理念最早在美國、英國、澳大利亞、新西蘭等地實施并取得了較好的反饋。近年來香港教育資助委員會在香港的高等院校中逐步開展成果為本的教學(xué)改革,其中香港理工大學(xué)早在2004年初已開始將成果為本的教學(xué)理念納入該校的課程教學(xué)中,在教學(xué)及評估方面取得了顯著的成績。在這種教育理念下,教師不僅要能運用現(xiàn)有的教育水平和科研要求實施教學(xué),而且要培養(yǎng)學(xué)生應(yīng)對未來、適應(yīng)未來的能力。

本次根據(jù)實際教學(xué)中存在的問題,將成果為本的教育理念應(yīng)用到《C語言綜合課程設(shè)計》的教學(xué)中,提高教學(xué)效果。教學(xué)改革的思路為:根據(jù)該課程的教學(xué)大綱,明確課程教學(xué)目標(biāo),并轉(zhuǎn)換為學(xué)生的學(xué)習(xí)目標(biāo),根據(jù)學(xué)生的學(xué)習(xí)目標(biāo)列出可量化可考核的學(xué)習(xí)成果形式,根據(jù)學(xué)習(xí)成果設(shè)計教學(xué)內(nèi)容和教學(xué)活動,制定與學(xué)習(xí)成果相關(guān)的考核評價體系,經(jīng)考核明確課程教學(xué)與課程目標(biāo)之間的差距,為后續(xù)教學(xué)提供參考,使課程目標(biāo)與教學(xué)實施過程形成了良性的閉環(huán)控制系統(tǒng)。

3 課程教學(xué)實施

在教學(xué)目標(biāo)上,以適應(yīng)應(yīng)用型本科教材改革的需要為目標(biāo),充分體現(xiàn)專業(yè)特色,有所創(chuàng)新和突破。走訪IT公司和企業(yè)了解他們對人才的需求規(guī)格,明確教學(xué)目標(biāo)中的知識目標(biāo)、素質(zhì)目標(biāo)和能力目標(biāo)。修訂教學(xué)大綱,并轉(zhuǎn)換為學(xué)生的學(xué)習(xí)目標(biāo),建立ASK模型(Attitude素質(zhì);Skill能力;Knowledge知識)。

課程學(xué)習(xí)目標(biāo)是指學(xué)生通過該課程的學(xué)習(xí)后,能夠做什么,具有什么樣的能力和技能,教師在制定學(xué)習(xí)成果目標(biāo)時應(yīng)當(dāng)考慮該課程需要傳授哪些知識給學(xué)生,學(xué)生應(yīng)達(dá)到什么樣的理解程度以及如何體現(xiàn)學(xué)生是否理解這些知識。George Brown學(xué)院提出的觀點認(rèn)為課程學(xué)習(xí)目標(biāo)的制定需要保證成果是可衡量評估的,便于在教學(xué)過程中檢查成果的完成情況,成果應(yīng)當(dāng)與學(xué)生的實際能力有關(guān),并具有一定的社會意義,成果目標(biāo)的數(shù)量以4~5個為宜,成果過多會導(dǎo)致學(xué)生的專注度降低,影響學(xué)習(xí)效果。制定與學(xué)習(xí)目標(biāo)相匹配的成果形式和教學(xué)方法,形成《C語言綜合課程設(shè)計》課程“基于成果為本的教學(xué)設(shè)計”方案。(表1)

教學(xué)實施中,根據(jù)課程學(xué)習(xí)目標(biāo),設(shè)計三個教學(xué)項目,分別為“手機通訊錄管理系統(tǒng)”,考查結(jié)構(gòu)體、指針、文件的操作,“家庭財務(wù)管理系統(tǒng)”,考查鏈表、指針、文件的操作,“時鐘的設(shè)計”,考查圖像界面設(shè)計。由3位學(xué)生組成開發(fā)小組針對不同項目,輪值項目負(fù)責(zé)人,明確分工、模擬項目開發(fā)流程,依據(jù)開發(fā)環(huán)節(jié)進(jìn)行任務(wù)分解,并在各個開發(fā)環(huán)節(jié)撰寫開發(fā)文檔,最終形成課程設(shè)計報告。課堂以學(xué)生研討為主,教師講解為輔;課下以學(xué)生獨立編碼為主,教師引導(dǎo)為輔。項目完成后,學(xué)生演示項目進(jìn)行答辯,展示項目

成果。

4 總結(jié)

基于成果為本的教學(xué)模式可以幫助學(xué)生清晰明確地定義課程的學(xué)習(xí)目標(biāo)和學(xué)完課程后需要掌握的知識和能力。在《C語言綜合課程設(shè)計》教學(xué)改革中,明確了學(xué)生學(xué)習(xí)目標(biāo)和學(xué)習(xí)成果形式,將學(xué)習(xí)目標(biāo)、學(xué)習(xí)成果和考核形成進(jìn)行統(tǒng)一。教學(xué)中采用項目教學(xué)法等多種教學(xué)方法,完成配套教案、講稿、課程多媒體教學(xué)文件(PPT)、網(wǎng)絡(luò)課程等教學(xué)資源建設(shè),提高學(xué)生學(xué)習(xí)興趣和增強學(xué)生的就業(yè)能力。

c語言課程設(shè)計論文:項目驅(qū)動的分組教學(xué)法在C語言課程設(shè)計中的實踐

摘 要: 針對C語言實踐教學(xué)中存在的問題,提出在C語言課程設(shè)計的教學(xué)中采用項目驅(qū)動的分組教學(xué)模式。融合軟件工程思想,從項目設(shè)計、分組劃分、模塊化思想應(yīng)用、編程思想訓(xùn)練、測試、考核方式等多個方面改革實踐教學(xué)環(huán)節(jié),因材施教,使得學(xué)生在解決實際問題的過程中,通過分工協(xié)作,提高自主學(xué)習(xí)能力,培養(yǎng)起團(tuán)隊合作精神,從而提高教學(xué)效果和教育質(zhì)量。

關(guān)鍵詞: C語言課程設(shè)計; 項目驅(qū)動; 分組教學(xué); 模塊化思想; 協(xié)作

0 引言

當(dāng)今社會,隨著信息技術(shù)的高速發(fā)展,各種程序設(shè)計語言蓬勃發(fā)展,如C、C++、JAVA、C#等。在這些語言中,C語言是各高等院校的計算機及相關(guān)專業(yè)的一門核心基礎(chǔ)課程,它的學(xué)習(xí)效果會極大程度影響學(xué)生后續(xù)相關(guān)課程,如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、算法分析以及其他高級語言的學(xué)習(xí)。

作為一種實踐性很強的程序設(shè)計語言,C語言課程的教學(xué)一般采用理論教學(xué)結(jié)合上機實踐的模式,理論教學(xué)以講授語法和基本算法為主,上機實踐則主要練習(xí)簡單程序的編寫,通常以驗證性實驗為主,以掌握、鞏固基礎(chǔ)的語法為目的。從教學(xué)效果來看,學(xué)生雖然掌握了不少語法知識,但在面對實際問題時,往往不能靈活應(yīng)用。為了進(jìn)一步拓展學(xué)生的實踐編程能力,我們學(xué)院繼兩個學(xué)期的C語言教學(xué)后開設(shè)了“C語言課程設(shè)計”課程,該課程以設(shè)計性和綜合性實驗為主,重點培養(yǎng)和鍛煉學(xué)生獨立分析問題,解決實際問題能力。根據(jù)這一教學(xué)目標(biāo),我們結(jié)合日常教學(xué),針對實踐教學(xué)中存在的不足,開展項目驅(qū)動的分組教學(xué)方法,使學(xué)生形成自主和協(xié)作型的學(xué)習(xí)模式。

1 教學(xué)現(xiàn)狀

C語言是一種面向過程的結(jié)構(gòu)化程序設(shè)計語言,具有數(shù)據(jù)類型較多、表達(dá)式豐富、語法結(jié)構(gòu)復(fù)雜、語法規(guī)則繁多等特點,其授課對象往往又是第一次接觸程序設(shè)計語言的低年級學(xué)生,這些都給學(xué)生學(xué)習(xí)和教師教學(xué)帶來了難度。通過對學(xué)生進(jìn)行教學(xué)效果調(diào)查,發(fā)現(xiàn)在“理論+實驗”的教學(xué)模式中,由于課時限制等各種因素,實際教學(xué)常存在著如下問題。

⑴ 實驗訓(xùn)練以知識點訓(xùn)練為主,與實際應(yīng)用存在脫節(jié)。

在理論課后的上機練習(xí),通常是針對特定語法設(shè)計,形式上采用練習(xí)書上的例子、驗證某個語法或者實現(xiàn)一些簡單的相關(guān)算法,驗證性實驗占了多數(shù)。這種訓(xùn)練模式雖然能夠加深學(xué)生對各種語法細(xì)節(jié)的認(rèn)識,但同時導(dǎo)致的問題是,學(xué)生容易孤立地去看待各章節(jié)的語法,割裂了各知識之間的聯(lián)系,在編程時以模仿改寫書上的程序為主,欠缺工程型知識,處于被動灌輸?shù)膶W(xué)習(xí)狀態(tài),常常會覺得語法知識點繁瑣、內(nèi)容枯燥,很難調(diào)動積極性,當(dāng)面對實際工程問題時,程序規(guī)模一大,就束手無策,無法有機地綜合應(yīng)用所學(xué)知識去解決問題。

⑵ 沒有形成系統(tǒng)化的分析過程。

由于教學(xué)和教材均側(cè)重于對語法進(jìn)行講授和剖析,未強調(diào)分析及測試的重要性,也沒有將軟件工程的思想融合在實踐教學(xué)中,因此,長久以來,學(xué)生養(yǎng)成一接觸題目就馬上開始編寫代碼的習(xí)慣,并且,運行時往往僅按照預(yù)先設(shè)定的正確的輸入數(shù)據(jù),去驗證自己的所編的程序是否正確。

⑶ 忽略算法邏輯思維能力的培養(yǎng)。

從學(xué)習(xí)效果來看,學(xué)生常存在著兩種誤區(qū),一種是將參與和獲得計算機等級考試證書作為學(xué)習(xí)目的,這就導(dǎo)致他們習(xí)慣于程序填空題形式的編程方式,獨立編程能力欠缺;一種是對C語言中的指針、遞歸問題存在畏難情緒,又認(rèn)為就業(yè)時可以選擇其他語言工具如Java來避免這些難點,沒有認(rèn)識到指針和遞歸的真正價值在于學(xué)習(xí)它們過程中得到的思維深度[1],忽略了推理能力、抽象思考能力方面的培養(yǎng)。

⑷ 實踐操作能力不強。

學(xué)生的實驗操作能力不強主要表現(xiàn)在對程序運行中一些常見編譯問題無法很快做出反應(yīng),不會依據(jù)提示信息去判斷發(fā)生錯誤的原因,對一些運行問題更是束手無策,通常一有問題產(chǎn)生,就轉(zhuǎn)向?qū)ふ遗涮椎膶嶒炛笇?dǎo)書中所提供的正確答案,或者依賴教師指出問題所在,幫忙改正錯誤。

2 項目驅(qū)動的分組教學(xué)方法的具體實施

建構(gòu)主義學(xué)習(xí)理論認(rèn)為,個體的認(rèn)知發(fā)展與學(xué)習(xí)過程密切相關(guān),知識獲取是以學(xué)習(xí)者為中心,利用“情境”、“協(xié)作”、“會話”等學(xué)習(xí)要素,通過意義建構(gòu)的方式而獲得。針對C語言課程設(shè)計這一門實踐性非常強的課程,我們采用項目驅(qū)動的分組教學(xué)方法,在建構(gòu)主義學(xué)習(xí)理論基礎(chǔ)上進(jìn)行教學(xué)設(shè)計,以學(xué)生為中心,融合軟件工程思想,以培養(yǎng)學(xué)生的程序設(shè)計能力、創(chuàng)新能力、邏輯思維能力和協(xié)作精神為主線,通過項目任務(wù)引導(dǎo)他們主動學(xué)習(xí),去深入理解軟件設(shè)計思想,并加深對重要知識點的理解。為了將課內(nèi)實踐和課外自學(xué)有機結(jié)合起來,我們將15個學(xué)時的上機實踐分為5次,集中安排在5天內(nèi),每次上機后留充足時間,要求學(xué)生去查閱資料,提升獲取信息、解讀信息的能力。整個教學(xué)過程中,需要在多個教學(xué)環(huán)節(jié)注意改革和創(chuàng)新。

2.1 項目設(shè)計

項目的提出是能否調(diào)動學(xué)生學(xué)習(xí)積極性的關(guān)鍵。目前隨著信息化建設(shè)的深入,軟件在各個行業(yè)都獲得了廣泛應(yīng)用,其實際應(yīng)用領(lǐng)域非常廣泛。課程設(shè)計應(yīng)該提供一個良好的學(xué)習(xí)“情境”,要結(jié)合教學(xué)目標(biāo),來模擬演練實際軟件開發(fā)過程。項目的設(shè)計需要遵循以下幾點:①選擇學(xué)生比較熟悉的領(lǐng)域,貼近學(xué)生生活和學(xué)習(xí)方面的應(yīng)用,避免選擇需要較強專業(yè)背景、業(yè)務(wù)邏輯復(fù)雜的應(yīng)用,例如可以選擇學(xué)生選課、書籍管理、宿舍管理等,而盡量不要去選擇企業(yè)人事管理之類的應(yīng)用。這樣可以方便學(xué)生理解或完整需求,激發(fā)他們用程序去解決現(xiàn)實生活問題的興趣。②功能上要有層次性,可劃分為一般性要求和可拓展性要求,一般性要求指出必須實現(xiàn)的功能,可拓展性要求則指出可以擴展的功能,引導(dǎo)學(xué)生去探索和想象,可以方便開展梯隊型教學(xué)。③從項目的編碼實現(xiàn)考慮,要能涵蓋C語言中的結(jié)構(gòu)體或聯(lián)合體等復(fù)雜數(shù)據(jù)類型,體現(xiàn)函數(shù)和指針這條主線,以促進(jìn)學(xué)生去綜合運用和深入理解這些重要的知識點。

2.2 分組劃分

一個軟件的開發(fā)僅依靠個人力量往往是無法實現(xiàn)的。軟件生命周期的各個階段需要軟件小組開發(fā)人員協(xié)作完成[2],因此,在課程設(shè)計教學(xué)中,我們采用分組教學(xué)模式來培養(yǎng)學(xué)生的團(tuán)隊合作意識和團(tuán)隊精神,來充分體現(xiàn)合作與競爭、分層教學(xué)與因材施教[3],并且還可以通過幫帶方式和組內(nèi)討論消化掉一部分問題。分組是否合理、有效,直接影響協(xié)作模式能否取得良好的教學(xué)效果。在C語言課程設(shè)計實踐中,我們按照任務(wù)量安排人數(shù),學(xué)生分為以3-5人一組,按照組內(nèi)搭配合理,組件平衡原則分配,在分組時充分考慮到學(xué)生的個體能力差異,使學(xué)生能在交流合作過程中取長補短。分組觀點認(rèn)為組內(nèi)成員之間的合作關(guān)系可以有“頭腦風(fēng)暴”式、模擬課題式、同伴互助式、角色扮演式和組合式[4]。這里,我們可以結(jié)合軟件開發(fā)的分工特點,將角色扮演應(yīng)用到課程設(shè)計的分組中,由小組組長擔(dān)當(dāng)開發(fā)經(jīng)理角色,其他人員針對其特長分別擔(dān)當(dāng)需求分析師、架構(gòu)設(shè)計師、開發(fā)人員、測試人員等角色,根據(jù)開發(fā)階段的不同,各成員可以扮演不同類型的角色。

2.3 培養(yǎng)學(xué)生用模塊化思想對實際問題進(jìn)行分析和設(shè)計

結(jié)構(gòu)化方法強調(diào)以模塊為中心,采用模塊化、自頂向下、逐步求精設(shè)計過程。項目驅(qū)動的教學(xué)要培養(yǎng)學(xué)生用模塊化思想思考復(fù)雜問題,即將程序劃分成獨立命名且可獨立訪問的模塊,最后裝配集成模塊完成指定的功能。指導(dǎo)過程中,不僅需要糾正學(xué)生一接觸題目馬上編碼的習(xí)慣,而且需要糾正學(xué)生在main方法中編寫所有代碼的習(xí)慣,這種方式會使得整個函數(shù)變得龐雜,代碼冗余大,不利于分工協(xié)作,也給閱讀和維護(hù)帶來很大的困難。當(dāng)學(xué)生在程序分解主函數(shù)和若干個其他函數(shù)時,發(fā)現(xiàn)常存在著隨意分解、隨心所欲定義函數(shù)的現(xiàn)象,針對這一情況,教師可以先以一個項目為例,如成績管理系統(tǒng),演示模塊的分解過程,說明內(nèi)聚性和耦合性要求[5]。在實際項目應(yīng)用時,要求學(xué)生按功能分解,模塊內(nèi)的函數(shù)做到功能盡量單一,留出接口供其他模塊調(diào)用,一個模塊對應(yīng)一個文件,便于分工協(xié)作。各小組在完成按模塊劃分的軟件體系結(jié)構(gòu)圖后,才被允許進(jìn)入下一個詳細(xì)設(shè)計編碼階段。

2.4 強化編程思想的訓(xùn)練,加深對重要知識點的理解

算法是程序設(shè)計的靈魂,教學(xué)中需要成功訓(xùn)練好學(xué)生的頭腦,使他們變得足夠熟練、敏捷和靈活,需要訓(xùn)練學(xué)生在多個抽象層次上同時思考問題[1]。因此,實踐過程中,要求學(xué)生熟練應(yīng)用程序流程圖或偽代碼等工具設(shè)計算法,在組內(nèi)展開討論,比較不同算法實現(xiàn)方案的優(yōu)劣,以及如何在完成程序的功能基礎(chǔ)上,改善程序結(jié)構(gòu),優(yōu)化算法,進(jìn)一步提高運行效率和空間利用率。

對C語言而言,訓(xùn)練學(xué)生的編程思想,離不開指針、函數(shù)參數(shù)傳遞這些重要概念,是否真正理解這些概念也與能否成為一個優(yōu)秀程序員直接相關(guān)。在學(xué)生編碼時,可幫助他們建立內(nèi)存模型,通過跟蹤每條語句的執(zhí)行情況,感受不同數(shù)據(jù)類型在內(nèi)存中所占用的空間,直觀地觀察內(nèi)存布局變化、變量的生命周期、變量狀態(tài)的變化等,去深入理解這些概念尤其是指針的本質(zhì)。

程序設(shè)計的另一目的是要培養(yǎng)學(xué)生的操作能力,其中很重要的一點就是提高調(diào)試能力。調(diào)試的方便與否與程序書寫風(fēng)格密切相關(guān),學(xué)生通常不注意代碼的規(guī)范化,出現(xiàn)沒有層次縮進(jìn),標(biāo)記符隨意命名、詞不達(dá)意,也沒有必要的注釋等現(xiàn)象,這些給查錯和閱讀帶來了很大的不便,不利于分組模式下的協(xié)作開發(fā)和維護(hù),因此,實踐教學(xué)時應(yīng)該培養(yǎng)學(xué)生注意良好程序風(fēng)格。此外,教學(xué)時還需糾正部分學(xué)生寫代碼一寫到底的習(xí)慣,讓學(xué)生認(rèn)識到程序的編寫是一個調(diào)試-修改-調(diào)試的反復(fù)迭代過程,要在多次錯誤或失敗中獲取調(diào)試經(jīng)驗。在學(xué)生出現(xiàn)錯誤時,要引導(dǎo)學(xué)生根據(jù)錯誤和警告信息,分析辨別是語法錯誤還是邏輯錯誤,并鼓勵學(xué)生使用調(diào)試工具,應(yīng)用斷點跟蹤和對分查找等調(diào)試方法,去主動地發(fā)現(xiàn)和解決問題。

測試在軟件開發(fā)中占重要地位,軟件測試的工作量往往占軟件開發(fā)總工作量的40%以上。從學(xué)生實踐情況調(diào)查來看,測試往往是初學(xué)C語言的學(xué)生特別容易忽略的,普遍出現(xiàn)一些諸如不重視人機交互界面設(shè)計,沒有輸入提示或出錯提示信息,僅使用在預(yù)定范圍內(nèi)、滿足預(yù)定格式要求的正確數(shù)據(jù)進(jìn)行測試等問題。項目驅(qū)動的教學(xué)尤其應(yīng)該注重培養(yǎng)學(xué)生的測試意識,指導(dǎo)學(xué)生學(xué)會設(shè)計簡單的有效測試用例和無效測試用例,并開展組內(nèi)測試和組間測試,以提高測試效率和質(zhì)量。

2.5 考核方式改革

對不容易理解的常量、變量和語句有注釋\&5%\&函數(shù)、變量取名較規(guī)范易懂\&5%\&函數(shù)功能是否滿足功能內(nèi)聚\&15%\&調(diào)試手段\&會單步運行到任何一個語句,查看變量值\&5%\&會斷點調(diào)試\&5%\&總結(jié)報告\&用流程圖或偽代碼描述一個函數(shù)的算法\&10%\&有小組分工情況說明和各自的經(jīng)驗總結(jié)\&5%\&語言簡練,條理清楚,圖表規(guī)范,附程序清單\&10%\&]

分組形式的課程設(shè)計需采用彈性考核機制,個人考核、組內(nèi)考核和教師考核有機結(jié)合方式。課程設(shè)計考核成績=個人自我評價(15%)+組內(nèi)評價(35%)+教師評價(50%)。自我評價是促進(jìn)學(xué)生反思的一種有效手段,組內(nèi)評價可以觀察學(xué)生組內(nèi)交流協(xié)調(diào)時有沒有突出表現(xiàn),而為避免少數(shù)學(xué)生抄襲實驗報告,教師評價采用答辯形式,考核學(xué)生的實際操作能力、對數(shù)據(jù)結(jié)構(gòu)設(shè)計和算法的理解程度,以及功能和算法上的應(yīng)用亮點??己说木唧w內(nèi)容和評分標(biāo)準(zhǔn)可以多元化,比如對一個用鏈表實現(xiàn)圖書信息管理系統(tǒng)的項目,可以按表1來指定具體考核標(biāo)準(zhǔn)。

3 結(jié)束語

本學(xué)院的C語言課程設(shè)計教學(xué)實踐表明,通過項目驅(qū)動的分組教學(xué)法的實施,能充分調(diào)動學(xué)生的學(xué)習(xí)積極性,學(xué)生的編程邏輯性和實踐能力都得到了明顯提高。在模仿實際開發(fā)環(huán)境過程中,學(xué)生對項目開展的整個流程和各環(huán)節(jié)的具體要求程有了切實了解,積累了一定的項目開發(fā)經(jīng)驗,培養(yǎng)起了團(tuán)隊協(xié)作能力。為了能更好地提高學(xué)生實踐能力,為他們將來從事軟件開發(fā)工作奠定扎實基礎(chǔ),我們還需要在今后的實踐教學(xué)中繼續(xù)開拓和探索,以期達(dá)到更好的實踐效果。