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

對于C++語言考試編程題自動評分系統的研究

2010-04-12 00:00:00張曉光,張貞,牛永潔
現代電子技術 2010年18期

摘 要:為了使學生適應計算機語言考試,考核學生應用C/C++編寫程序的能力,實現C++語言考試的計算機閱卷,提出了針對C++程序上機考試的自動評分系統的構建方式與算法研究。用Windows API函數做了深入的研究與分析,對如何匹配、查找程序的關鍵語句進行了分析和研究。該系統對C++程序上機考試的客觀題和主觀題的計算機自動評分采用多種的方法,完成了對C++語言考試的自動評分。關鍵詞:自動評分;主觀題; 正則表達式; 可擴展標記語言

中圖分類號:TN911-331; G420 文獻標識碼:A

文章編號:1004-373X(2010)18-0051-02

Study on Automatic Scoring System for Programming Exams of C++ Language

ZHANG Xiao-guang, ZHANG Zhen, NIU Yong-jie

(Computing Center, Yan’an University, Yan’an 716000, China)

Abstract: The building-up mode and algorithm for the automatic scoring system dealing with the exams on computer for C++ program are proposed to make the students to accommodate the computer language exams, improve the ability of the students for writing programs with C++and realize the computer scoring for C++ language examination. The Windows API function and the method to look for keywords of a program are analyzed. The automatic scoring for C++ language exams was implemented with several methods.Keywords: automatic scoring system; subjective question; regular expression; extensible markup language

0 引 言

在當今社會計算機已經成為人們必須掌握的一項基本技能,在大學之中計算機課程也已經是每個大學生必修的課程。隨之而來的便是計算機教師的閱卷工作量不斷增長,使用計算機自動批改試卷越來越成為教師們的愿望,同時提高對學生試卷的評定精度與速度勢在必行。計算機自動評分避免了以往人工批改試卷的種種問題,保證了對試卷評定的公正與客觀。當前,對于計算機考試中自動評分技術的研究已經有了很大的進展,但是對于計算機考試完全實現自動評分卻一直未能解決。造成這一問題的重要原因是自動評分中一些關鍵技術尚不成熟,所以完全解決計算機考試自動評分問題在當前的技術條件下尚不可能。但是,對于計算機程序語言來說,因為相對自然語言,其所受到的約束和限制相當嚴格,所以實現對計算機考試中計算機程序語言考試的自動評分在技術上是可以實現的。

在當前的計算機程序語言考試中主要分為客觀題(比如填空題和改錯題)和主觀題(比如編程題)。客觀題的自動評分在技術上比較容易實現,而編程題這一常見的主觀性題型的自動評分卻沒有較好的解決方法。因為,如果僅以考生編寫的程序運行結果作為評判標準的話,雖然技術上很容易實現,但是相當的不客觀。這種方法忽視了考生的源代碼與編程思想,這是與人工評分相違背的。

要使編程題的評分客觀公正,就必須對試卷中考生所編寫的源代碼進行分析與處理,如何分析試卷中考生的源代碼已成為解決對編程題自動評分的關鍵。

1 國內外編程題自動評分研究現狀

1.1 國內編程題自動評分研究情況

在國內,上海大學段漢周[1]等人提出的程序設計考核自動評閱系統在進行評分時,需要教師事先根據試題做好一個正確的VB工程文件,然后自動評分系統提取考生所做工程文件中的內容與教師事先提供的工程文件內容進行比較判斷,統計出考生的各種錯誤,然后根據考生所犯的錯誤,依據評分標準進行評分,從而得出考生的成績。但是這套系統的評分是建立在無法通過編譯或者不能運行的程序都是完全錯誤的基礎之上的,只有沒有出現上述情況的程序才可以進行評分,否則就自動給零。此外,對于系統的可靠性,防止使用用戶程序時出現的各種問題與系統崩潰、死機等情況做出了專門的設計,取得了良好的效果。

喬善平等人提出了從人工智能可信度的角度引入[2]:執行可信度、程序的最大相似性與代碼可信度和指數曲線衡量標準與輸出可信度幾個新的概念, 然后分析了實現的過程,并且將整個程序設計分為幾個部分執行、代碼、輸出和其他因素,使之存在偏序和制約關系, 以實現自動評分。

1.2 國外編程題自動評分研究情況

由英國諾丁漢大學所研發的CourseMaster系統,其功能是比較完善的,可以自動對提交給它的計算機程序進行測試,同時給出測試結果和分析結果,包括了靜態測試和動態測試兩部分。但是在動態測試方面,由于諾丁漢大學的CourseMaster系統所用的算法設計有缺陷,因此造成了動態測試效果與實際偏差較大[3]。

2 設計思想

對于程序來說,判斷其是否正確,最直觀的辦法就是判斷它是否能夠完成規定的功能,也就是其運行結果與實際應有的結果比較是否一致。通過使用數據文件,可以將C++語言的運行結果保存起來,所以能夠很容易地將其結果文件與標準答案進行比較,從而判定考生所編寫程序的錯對,以給其應得的分數。

對于那些有結果但不正確,或者無法編譯運行的考生代碼,檢查其算法思想是否準確合理編程為工作目標,雖然在C/C++語言中對于一個問題可以用多種方法完成代碼的編寫,但是其算法思想是基本一致的。例如一個排序程序應該如下程序設計結構

for(i=0;i

for(j=i+1;j

if(a>b)

{

}

根據C/C++語言的關鍵字,可以抽取骨架為for()for()if(){}或者for(){for()if(){}}等,從考生文件抽取的骨架與標準的骨架相對比,根據異同給予一定的分數。

在對考生程序進行評分時,由于考生編寫程序時常常出現死循環問題,而有死循環的程序如果被Shell函數調用啟動后將因無法結束而使系統崩潰。但通過Visual Basic調用Windows提供的控制應用程序API函數則可防止這種情況的出現。

為了避免考生互相抄襲,該系統采用了兩種預防措施。第一種措施,不同考生在考試期間隨即抽取試題庫中不同的試題,但是還可能出現相近考生試題相同的情況。從實際出發,該系統采用“記錄解答過程”的方法,利用Windows內部功能[4-7],或考核軟件(VC++)提供的“宏”功能,跟蹤記錄考生操作的每一步驟,形成獨立的日志文件,并通過特殊方法“固化”在當前位置,或者直接傳送到服務器上,作為評分的必需內容。評分時,如搜索不到指定日志文件,就可認定為“抄襲”[5]。

3 系統設計

在系統中對編程題的實現,使用其運行結果與標準答案之間的比較來判定分數設計也相當容易。但是,要實現當程序運行結果與標準答案比較不匹配或程序無法編譯運行的情況,則如何檢測其程序的編程思想是自動評分系統的要點。該系統設計的總體思路如圖1所示。

圖1 系統流程圖

4 結 語

該系統經過多次實際使用,有效地避免了上述問題的出現,能夠準確定位問題的位置,并且對于一題多解的問題也運行良好,在程序編程問題中,能夠基本體現公平、客觀地評價一個學生的編程思想,特別是操作日志的使用,有效地監督了學生的“抄襲”現象。對程序編程時,不能通過編譯的,但是已經編寫了一部分程序的考生,使用提取骨架的方法,基本能夠給考生一個公平的評價,改善了過去很多系統給學生打零分的情況[8-9]。

參考文獻

[1]段漢周,凌捷,鄭衍衡.Visual Basci程序設計考核自動評閱系統中若干問題的研究[J].計算機工程,2001,27(4):167-168.

[2]REDMIL Felix. Exploring risk-based testing and its implications[J]. Software Testing,Verfication and Reliability,2004,14(1):3-15.

[3]喬善平.基于智能移動Agent的C語言考試系統[J].計算機工程與科學,2004(4):29-31.

[4]朱友芹.WindowsAPI 參考大全[M].北京:電子工業出版社,2000.

[5]尉宏波.Windows API編程范例入門與提高[M].北京:清華大學出版社,2003.

[6]林倉.Windows API編程[M].北京:清華大學出版社,2005.

[7]求是科技.Windows API程序設計參考大全[M].北京:人民郵電出版社,2006.

[8]高思丹,袁春風.主觀試題的計算機自動批改技術研究[J].計算機應用研究,2004,21(2):181-185.

[9]程華.計算機語言類課程主觀試題的自動評分方案設計[J].電腦學習,2006(1):16-17.

[10]李旻,陳和平.正則表達式在數據庫查詢中的應用[J].計算機工程與設計,2006,27(12):3-5.

[11]田緒安,郭華磊,劉瑞光,等.基于模糊匹配的主觀題評分在線考試系統[J].現代電子技術,2007,30(12):96-98.

[12]司存瑞,周巖,孫米.網絡考試系統平臺的設計與實現[J].現代電子技術,2006,29(20):44-46.

主站蜘蛛池模板: 国产精品福利在线观看无码卡| 成人亚洲国产| 欧美日韩另类在线| 国产成人综合网在线观看| 国产精品lululu在线观看| 久久国产av麻豆| 国产丝袜无码一区二区视频| 蝌蚪国产精品视频第一页| 成人午夜精品一级毛片| 色综合久久无码网| 日韩欧美在线观看| 久久精品国产亚洲AV忘忧草18| 欧美在线视频不卡| 首页亚洲国产丝袜长腿综合| 亚洲婷婷在线视频| 亚洲欧美不卡中文字幕| 国模极品一区二区三区| 亚洲免费黄色网| 中国国产A一级毛片| 国产精品一老牛影视频| 亚洲色偷偷偷鲁综合| 国产免费高清无需播放器| 九九热视频精品在线| 亚洲一级无毛片无码在线免费视频 | 中文字幕av一区二区三区欲色| 亚洲第一成年网| 97青青青国产在线播放| 欧美自慰一级看片免费| 日本三区视频| 国产成人h在线观看网站站| 青青草91视频| 在线国产毛片手机小视频| 免费在线不卡视频| 重口调教一区二区视频| 国产在线拍偷自揄观看视频网站| 欧美精品伊人久久| 欧美日韩另类在线| 99国产精品免费观看视频| 亚洲最猛黑人xxxx黑人猛交| av在线人妻熟妇| 亚洲精品波多野结衣| 国产精品乱偷免费视频| 国产久草视频| 色噜噜狠狠色综合网图区| 色综合日本| 国产高清无码麻豆精品| 91综合色区亚洲熟妇p| 亚洲日韩精品欧美中文字幕| 久久久久青草大香线综合精品 | 亚洲综合色区在线播放2019| 日韩欧美在线观看| 亚洲av日韩av制服丝袜| 91精品日韩人妻无码久久| 国产精品白浆无码流出在线看| 91在线中文| 国产成人久久777777| 午夜不卡视频| 久久亚洲精少妇毛片午夜无码| 欧美午夜在线观看| 毛片在线看网站| 无码福利日韩神码福利片| 亚洲综合九九| 亚洲伊人天堂| 日韩高清在线观看不卡一区二区| 免费日韩在线视频| 国产欧美日韩综合在线第一| 欧美在线黄| 日本不卡在线播放| 日本不卡视频在线| 欧美a级完整在线观看| 嫩草影院在线观看精品视频| 伊人无码视屏| 欧美日本在线一区二区三区| 噜噜噜久久| 伊大人香蕉久久网欧美| 久久这里只有精品国产99| 国产视频你懂得| 欧美精品伊人久久| 欧美无专区| 国产va欧美va在线观看| 中文字幕在线一区二区在线| 欧美色99|