国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于在線判題系統(tǒng)的C語言實驗教學(xué)改革

2015-03-18 16:15:52熊茜雷亮許莎陳劉奎
關(guān)鍵詞:題庫C語言程序設(shè)計

熊茜,雷亮,許莎,陳劉奎

《C語言程序設(shè)計》是計算機和相關(guān)專業(yè)的基礎(chǔ)課程,學(xué)習(xí)人數(shù)眾多,影響面廣。但在C語言的實驗教學(xué)過程中,普遍存在以下問題[1,2]:學(xué)生興趣不高,學(xué)習(xí)內(nèi)容枯燥陳舊,學(xué)習(xí)目的不明確;學(xué)生上機實驗時,常將教材或習(xí)題集上的程序代碼抄寫到編譯器中,然后提交到機房服務(wù)器就算完成作業(yè),并不知對錯或是否完全正確,更談不上透徹理解程序;教師由于工作量巨大不可能批閱所有同學(xué)的程序,最多抽查批改,很難全面了解班級的學(xué)習(xí)情況,實驗中的問題也無法實時和學(xué)生溝通。

以上問題都直接影響了C語言的學(xué)習(xí)效果,導(dǎo)致C語言課程的及格率偏低,學(xué)生對程序設(shè)計課程的抱怨較多,教師普遍感覺教學(xué)效果差。為改變這種狀況,重慶科技學(xué)院C語言課題組提出一種基于在線判題系統(tǒng)的C語言實驗教學(xué)改革方案,并于2015年春季學(xué)期在4個MOOC(大規(guī)模開放在線課程)班級中進行了實踐,取得了良好的效果。本文對使用在線判題系統(tǒng)進行C語言教學(xué)改革的具體內(nèi)容、運用效果、存在的問題及解決措施進行探討。

一、在線判題系統(tǒng)

(一)在線判題系統(tǒng)簡介

在線判題系統(tǒng)[3](Online Judge,縮寫 OJ)用來在線檢測程序源代碼的正確性。OJ系統(tǒng)能夠編譯并執(zhí)行代碼,使用預(yù)設(shè)的數(shù)據(jù)對這些程序進行測試。提交的代碼一般會在受限的環(huán)境下運行,包括時間限制、內(nèi)存限制、安全限制等。試題的解答提交后由評分系統(tǒng)評出即時得分,每一次提交的判決結(jié)果會及時通知,包括是否正確或錯誤的提示;OJ系統(tǒng)還會對用戶進行排名,以用戶提交答案通過數(shù)多少或某個題目執(zhí)行時間快慢為排名依據(jù)。

國內(nèi)著名的題庫有北京大學(xué)題庫、浙江大學(xué)題庫、電子科技大學(xué)題庫、杭州電子科技大學(xué)題庫等。國外的題庫包括烏拉爾大學(xué)題庫、瓦拉杜利德大學(xué)題庫等。我校采用的是浙江大學(xué)C語言題庫資源[4],題庫中題目的安排與授課內(nèi)容[5]一致,難度循序漸進,適合我校學(xué)生使用。

(二)在線判題系統(tǒng)優(yōu)點

使用在線判題系統(tǒng)輔助C語言的實驗教學(xué)具有諸多優(yōu)點:(1)激發(fā)學(xué)生的學(xué)習(xí)興趣。題庫中的題目經(jīng)過精心設(shè)計,普遍具有趣味性;系統(tǒng)具有排名激勵和類似游戲通關(guān)的激勵模式,如程序完全通過測試后會有氣球飄起。(2)即時反饋成績。學(xué)生可以實時獲取自己代碼的批閱結(jié)果及錯誤反饋,打分也是客觀公正的。教師非常容易統(tǒng)計成績,了解學(xué)生成績分布情況,極大地減輕了老師的工作量。(3)題庫中的題目可幫助學(xué)生建立編程思想,掌握編程能力。題目綜合性強,難度較大,要求結(jié)果完全正確,而且還要滿足內(nèi)存使用和運行時間等限制,要求學(xué)生有更強的思維能力,更強的程序?qū)崿F(xiàn)能力,考慮問題也要更全面。

二、基于在線判題系統(tǒng)的實驗教學(xué)改革方案

C語言的實驗教學(xué)如果圍繞在線判題系統(tǒng)展開,由于自動反饋成績,減少了教師的介入,就容易形成無人監(jiān)管的教學(xué)局面,導(dǎo)致實驗教學(xué)失控的情況發(fā)生。因此,必須在授課計劃、考核方式、課堂教學(xué)及輔導(dǎo)過程中做好“過程控制”,有序引導(dǎo)學(xué)生對在線判題系統(tǒng)的使用。

(一)授課計劃

由于采用MOOC教學(xué)模式,課堂上不再按傳統(tǒng)模式授課,要求學(xué)生必須在課前觀看教師授課視頻,而課堂上教師不再單向傳遞課程知識,重點是放在組織學(xué)生進行重難點的討論和大量的上機編程練習(xí)。

完全不同的授課模式要求重新制定授課計劃。傳統(tǒng)的授課計劃由理論課與實驗課構(gòu)成,新的授課計劃由討論課、上機課組成,并在其中穿插五次程序設(shè)計能力測試,由此進行過程考核。這五次測試都圍繞授課內(nèi)容展開,分別在順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、數(shù)組、函數(shù)章節(jié)理論課內(nèi)容學(xué)習(xí)完畢之后,要求學(xué)生完成題庫中的該章節(jié)題目。

(二)考核方式

考核方式中體現(xiàn)了在線判題系統(tǒng)的評分成績,將授課計劃中要求的五次程序設(shè)計能力測試的分數(shù)直接計入課程最終成績,分數(shù)直接由在線判題系統(tǒng)導(dǎo)出。通過將該系統(tǒng)分數(shù)計入最終成績,督促學(xué)生必須去完成這些題目。

MOOC班的總成績采取線上學(xué)習(xí)考核+線下課程考核相結(jié)合的方式進行折算。

(1)線上學(xué)習(xí)成績(30%):線上平時作業(yè)成績+線上期末考試成績;

(2)平時考核(40%):線下課堂討論和提問(20%)+五次程序設(shè)計能力測試(20%);

(3)期末考試(30%):線下參加重慶科技學(xué)院期末考試。

其中,線上平時作業(yè)、線上期末考試和五次程序設(shè)計能力測試均為在線評測。

(三)課堂組織

采用MOOC教學(xué)模式,課堂上的主角由老師變成學(xué)生,所有的討論與互動都是以學(xué)生為中心展開的。教師可以對全班學(xué)生分組,上課時按小組就坐,鼓勵同組成員互幫互助,以小組為單位對在線判題系統(tǒng)中的題目展開互動討論。鼓勵學(xué)生積極思考問題、設(shè)計算法、編寫程序,與他人分享自己的想法,營造良好的學(xué)習(xí)氛圍。

程序設(shè)計類課程看不會、聽不會,必須要自己上機動手編寫程序才有可能學(xué)會,采取翻轉(zhuǎn)課堂的方式就是希望讓學(xué)生通過大量的上機練習(xí)學(xué)會編程。于是將全部48學(xué)時的課都放在機房完成。在編程測試環(huán)節(jié),通常會先將本單元的題目提出討論,讓學(xué)生先理清思路,再動手編寫代碼。為鼓勵學(xué)生積極進行互動討論,設(shè)定平時成績獎勵制度,回答提問或分享想法都可獲取相應(yīng)的平時成績。

課堂中使用小道具增加學(xué)習(xí)的趣味性,提高學(xué)生的積極性。要求每位同學(xué)準備五面小旗,對應(yīng)于過程考核中每單元的五道題目,如果一個程序完全通過在線測評,就可以插起一面小旗,營造你追我趕的學(xué)習(xí)氣氛,讓編程變成充滿樂趣的游戲。

在程序評講討論階段,利用機房廣播系統(tǒng)演示教師編寫的程序及程序調(diào)試的過程。也可廣播學(xué)生的機器讓全班同學(xué)能直接看到其他同學(xué)的代碼,從而進行比較討論。

(四)輔導(dǎo)答疑

雖然在線判題系統(tǒng)能即時判斷程序?qū)﹀e及給出錯誤提示,但有些時候?qū)W生還是會遇到無法解決的問題,輔導(dǎo)答疑仍然必不可少。

在線判題系統(tǒng)上的題目普遍難度比較大,問題的描述也比較復(fù)雜,部分學(xué)生對題目的理解會存在困難,編程過程中更是存在各種各樣的問題,因此教師的輔導(dǎo)答疑工作量很大。教師應(yīng)于課前先試做一遍在線判題系統(tǒng)中的題目,做到對可能出現(xiàn)的問題心中有數(shù)。在做題前討論的基礎(chǔ)上對于共性問題應(yīng)該及時統(tǒng)一講解,還可以聘請研究生助教參與輔導(dǎo)答疑,同時也要鼓勵團隊互助。

三、在線判題系統(tǒng)的使用效果

在C語言課程的教學(xué)過程中,我們對基于在線判題系統(tǒng)的編程學(xué)習(xí)情況進行了多次問卷調(diào)查,從中了解到學(xué)生對于這種學(xué)習(xí)方式的認可度較高。總的來看,基于在線判題系統(tǒng)的程序設(shè)計課程的學(xué)習(xí)方式能明顯提高學(xué)生的學(xué)習(xí)興趣和編程能力。教師們對這種新的教學(xué)資源也非常感興趣。

(一)改善了學(xué)習(xí)效果

在以前的實驗課上,不少學(xué)生只是將老師布置的作業(yè)進行程序抄寫就算完成任務(wù),一旦沒有答案可參考就無從下手,即使是編寫了代碼,錯誤也較多,有些語法錯誤特別是邏輯錯誤需求助老師才能解決。經(jīng)過在線判題系統(tǒng)的編程訓(xùn)練,學(xué)生的學(xué)習(xí)效果有了明顯的改善。大部分學(xué)生在課程過半時都能獨立或?qū)W生互助解決語法錯誤,還能解決大部分邏輯錯誤,只是對較難發(fā)現(xiàn)的邏輯錯誤進行求助。在線判題系統(tǒng)上的題目難度普遍大于教材和習(xí)題集上的題目,學(xué)生的代碼量和程序質(zhì)量都提高了。

(二)提高了計算思維能力

在線判題系統(tǒng)中的題目都是經(jīng)過精心設(shè)計的,既有趣又貼近實際,采用計分排名機制,無形中給學(xué)生一種激勵,學(xué)習(xí)過程中你追我趕,學(xué)生學(xué)習(xí)興趣自然提高,變被動學(xué)習(xí)為主動學(xué)習(xí),主動學(xué)習(xí)就會有更多積極的思考。學(xué)生在編程的過程中,通過對數(shù)據(jù)的存儲處理和算法的設(shè)計,增加了對計算機基本組成及工作原理的理解,增加了對計算機科學(xué)的理解,在潛移默化中進行了計算思維的培養(yǎng),這正是要求學(xué)生學(xué)習(xí)這門課程的目的。

(三)轉(zhuǎn)變了師生角色

大部分學(xué)生對在線判題系統(tǒng)這種帶有挑戰(zhàn)性的學(xué)習(xí)方式都很感興趣,對編程變得更加專注,自然形成了以學(xué)生為中心的教學(xué)模式。以前教師是單向傳遞的灌輸式教學(xué),學(xué)生被動地接收信息,現(xiàn)在的情況是學(xué)生在判題系統(tǒng)任務(wù)的驅(qū)動下,主動完成練習(xí),并尋求同學(xué)與老師的幫助。

C語言教師的倦怠感減輕了。由于是公共基礎(chǔ)課,每個C語言教師每年都會重復(fù)教授2~3個班級,年復(fù)一年,一遍遍地重復(fù)課程中的每一個基礎(chǔ)知識點,學(xué)生的互動很少,對老師們來說,教學(xué)工作少了一些挑戰(zhàn)和新鮮感。而現(xiàn)在,教師的重點轉(zhuǎn)變?yōu)榕c學(xué)生討論和解決問題,專注于算法的設(shè)計和重難點知識的分解,老師們也會為學(xué)生提出的深奧問題而感到興奮。

四、存在問題及解決措施

我們在實踐過程中也發(fā)現(xiàn)一些問題,要更好地發(fā)揮在線判題系統(tǒng)在教學(xué)過程中的輔助作用,必須在下一步探索中解決好這些問題。

(一)不誠信答題

在線判題系統(tǒng)的優(yōu)點之一就是可以隨時隨地通過網(wǎng)絡(luò)答題,這同時也引出不誠信答題的問題。雖然教師都要求學(xué)生要講誠信,不能通過復(fù)制同學(xué)答案特別是網(wǎng)絡(luò)上的答案來答題,但不可避免還是會有同學(xué)在遇到無法解決的問題而又想獲取成績時采用這些方法。

要解決這個問題還必須通過技術(shù)手段,即需在原判題系統(tǒng)基礎(chǔ)上增加類似“查重”的功能,對用戶提交的程序進行判斷,自動確定是否有抄襲行為。

(二)有效的討論

雖然需要對在線判題系統(tǒng)中的題目展開討論,但大部分同學(xué)還不太習(xí)慣這種翻轉(zhuǎn)課堂,不愿意在很多人面前表達自己的想法,常常只有部分活躍的同學(xué)發(fā)表見解,并未將有效的討論深入到每一個同學(xué)中。因此,如何組織有效的討論是教師應(yīng)該深入思考的問題。

要在討論中有話可說,應(yīng)要求學(xué)生事先為討論做好充分的準備,首先要讀懂題目,熟悉使用的知識點及編程語句,設(shè)計相關(guān)的算法。討論中采用分組方式,組長和老師事先了解組員的解題思路,教師在組織討論的過程中,充分鼓勵各組分享自己的解題方法,給每一個同學(xué)表達的機會,特別要照顧到不愿發(fā)言的同學(xué)的感受。為讓學(xué)生們在討論中得到更多的思維訓(xùn)練和知識收獲,可采取自愿發(fā)言和點名發(fā)言的方式鼓勵不同個性的學(xué)生都積極參與討論。

(三)實驗指導(dǎo)書

在線判題系統(tǒng)的題庫多來自于名校名師,網(wǎng)絡(luò)中的輔導(dǎo)資源較少,缺乏針對題庫題目的解題指導(dǎo),學(xué)生在進行實驗的時候常常感到無從下手,如果能有實驗指導(dǎo)書,幫助其理清解題思路,就更容易實現(xiàn)自主學(xué)習(xí),減少抄襲的現(xiàn)象。因此,有必要編寫針對在線判題系統(tǒng)題庫的實驗指導(dǎo)書作為輔助教學(xué)資源。

總之,在線判題系統(tǒng)從程序設(shè)計比賽到進入課堂,逐步成為了很好的輔助教學(xué)資源,不僅可以用于C語言課程,還可以用于其他程序設(shè)計類課程;不僅可以用于MOOC班級,還可以用于采用傳統(tǒng)模式進行教學(xué)的班級。正是因為有了在線判題系統(tǒng),減少了教師的介入,才讓C語言這門課程更適合開展MOOC教學(xué)。該實驗教學(xué)改革方案效果明顯,真正提高了學(xué)生的實踐能力,應(yīng)該在程序設(shè)計類課程中大力推廣。

[1]潘麗麗,鐘少宏,姜瑜.非計算機專業(yè)C語言程序設(shè)計實驗教學(xué)模式[J].計算機教育,2011(18).

[2]寧曉梅,陳思慧.優(yōu)化非計算機專業(yè)C語言實驗教學(xué)的探討[J].福建電腦.2011(5).

[3]百度百科.在線判題系統(tǒng)[EB/OL].[2015-06-11].http://baike.baidu.com/item/%E5%9C%A8%E7%BA%BF%E5%88%A4%E9%A2%98%E7%B3%BB%E7%BB%9F.

[4]計算機程序設(shè)計能力考試[EB/OL].http://www.patest.cn/.

[5]何欽銘,顏暉.C語言程序設(shè)計:第2版[M].北京:高等教育出版社,2012.

猜你喜歡
題庫C語言程序設(shè)計
“勾股定理”優(yōu)題庫
“軸對稱”優(yōu)題庫
基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
計算機教育(2020年5期)2020-07-24 08:52:56
“軸對稱”優(yōu)題庫
“整式的乘法與因式分解”優(yōu)題庫
從細節(jié)入手,談PLC程序設(shè)計技巧
電子制作(2019年9期)2019-05-30 09:42:04
基于C語言的計算機軟件編程
電子制作(2018年16期)2018-09-26 03:27:08
高職高專院校C語言程序設(shè)計教學(xué)改革探索
PLC梯形圖程序設(shè)計技巧及應(yīng)用
論子函數(shù)在C語言數(shù)據(jù)格式輸出中的應(yīng)用
紫云| 广丰县| 西安市| 哈巴河县| 沐川县| 湘乡市| 东辽县| 咸阳市| 金山区| 昌都县| 朝阳市| 资阳市| 阿拉善左旗| 西城区| 大余县| 潮安县| 榆林市| 吴忠市| 乌兰察布市| 福贡县| 元谋县| 梁河县| 定安县| 邵阳市| 汶上县| 五河县| 亳州市| 东台市| 惠安县| 泰来县| 米脂县| 拜泉县| 宜兰市| 驻马店市| 鄂托克旗| 沾益县| 古交市| 忻州市| 沁源县| 肇州县| 和平区|