摘 要:C語言是一門使用非常廣泛的計算機語言。其具有概念多,題型變化萬千,重在理解等特點。在普通高等院校中,C語言試題往往由教師手動編寫及評測,對于這樣一門靈活的課程,工作量往往很大。所以增大了教學管理工作的難度。一套C語言試題生成系統對于高校就顯得極為重要。
通過這樣一個系統,學生可以隨時隨地進行C語言練習,鞏固基礎知識,強化專業素養;并且,系統可自動生成C語言試題,減輕教師工作量;在考試結束后,系統能夠自動閱卷并評分,提高試題評測的準確性;綜上所述,C語言試題生成系統將提高高校的辦公效率和學生的專業素養。
關鍵詞:C語言;自動組卷;在線評測;B/S
中圖分類號:TP311.52 文獻標識碼:A 文章編號:1674-7712 (2014) 18-0180-01
一、國內外現狀
國內外學者一直都熱衷于試題生成系統的研究,試題生成系統主要包含兩大主要模塊:自動組卷模塊和在線考試模塊。自動組卷模塊在長時間內一直有學者進行深入探討,但至今并沒有一個很好的算法方案。主要問題存在于采用經典的數學方法很難解決試卷生成過程中的收斂過程。目前的自動組卷模塊根據其所使用的策略大致可以分成五類:基于隨機抽取的自動組卷;基于深度與廣度搜索算法的自動組卷;基于遺傳算法的自動組卷;基于項目反應理論的自適應測試;基于數據挖掘和知識發現的自動組卷理論。而在線考試模塊中,已經出現了ACM/ICPC的源代碼在線評測系統,并且在實際應用當中效果顯著,明顯增加了閱卷人的效率。然而其要求運行環境苛刻,并且不具備通用性(只能應用于源代碼的測試),所以并不能很好的應用于國內的科學教育工作當中。我國國內也自主開發了一些在線評測系統,如等級考試的機試測試部分,這就是一個很好的應用實例,每年有數千萬的考生參加,也取得了顯著的應用效果。然而由于其源代碼的封閉性,致使其無法應用于其他高等院校。并且其系統當中也存在一定的效率問題。
二、系統概要設計
試題生成系統采用的是模塊化的設計思想,不同的模塊化對應不同的功能,而不同的用戶對系統有不一樣的功能需求。但總體來說本系統的功能需求主要包含包括幾方面:(1)對用戶的管理。用戶在進入系統時,必須要注冊用戶,登錄基本信息。在這項功能里,要實現對用戶的有效管理,本系統的用戶包括對學生、管理員、老師。在系統的數據庫中隊用戶的基本信息進行記錄管理。(2)對試題管理。系統在對試題管理的過程中,系統可以隨機分組試題,自動合成試卷,或者通過手工調整、編輯試卷和打印試卷等。老師還可以添加試題,刪除試題,修改試題,查詢試題。系統會及時更新試題庫,對試題庫進行備份,同時對不同的試題內容和屬性進行分類管理。(3)在線評測。學生在登錄系統后,確認考試信息等內容,系統就會及時生成試題,考生就可以進行在線考試,不受地域的影響。而在選擇套題的同時,系統會根據考生選擇的套題,而列出考試范圍的試題,給出每門課程合適的題型,而考生必須在規定的時間來完成。(4)成績的管理。考生考試完成后,成績將會保存在數據庫中。而老師或者學生在考試完成后,通過任何一臺聯網的計算機上就可以通過網頁方就可以查詢學生的成績。
總的來說,無論是學生考試還是教管理員對系統的管理還是老師對試題的添加修改,都能夠隨時隨地通過網絡完成對應的工作。
三、系統的功能模塊
通過對系統的需求分析,明確了本系統需要包含題庫管理、試卷管理、考試管理、成績管理、學生管理、教師管理以及系統維護等七個模塊。
四、核心模塊詳細設計
自動組卷模塊是本系統設計的重中之重,其只需要教師進行簡單的操作,便可根據教師設定的參數完成自動組卷,并且,在組卷之后還能夠提示教師修正題目,對不適合的題目進行修改。在整個執行過程中,首先判定用戶是否擁有操作權限,若沒有操作權限則自動終止;若有操作權限,則要求用戶輸入試卷生成時用到的必要信息,如試卷難度、試卷類型等,以及各種類型題目的數量,然后根據上述信息構成Z(X),U(X)數組,使用隨機選擇法生成所要求的試題;在生成試題之后,詢問用戶是否需要進行修改,若需要進行修改,則根據輸入的題目編號,修改對應的題目信息。如此往復直到節后,最后將相關信息分別存入試卷信息表和試題試卷對應表中。
五、結束語
系統的實現有效地提高了教學的管理,大大提高了工作效率。在系統的詳細設計開發過程中,采用模塊化的設計,采用當前比較流行的ASP技術,AJAX技術,基于B/S應用體系結構,讓系統更加健壯和靈活,能夠適應系統的不斷變化和發展。一個良好的試題生成系統它所涉及的內容和知識面較多,由于時間和條件的限制,系統仍存在一定的問題,今后的研究著重從以下幾個方面著手:(1)完善試題生成系統各模塊的功能的實現。(2)更深入地完善試題生成的算法,讓試題的調度更加合理科學。(3)更深入地學習考試數據的備份與恢復。(4)由于在本系統中主觀題還需要老師親自去修改,在以后的研究方向中需要進一步研究主觀題的網上考試的自動打分。(5)在題庫的建設問題上做更深入的研究。(6)進一步的做好系統的安全工作,防止黑客的入侵導致試題的泄露。(7)考試的監控系統,功能還有待完善,例如能夠實現人臉識別等功能。
參考文獻:
[1]譚浩強.C程序設計(第三版)[M].北京:清華大學出版社,2007:10-12.
[2]宋云嫻,白鵬.智能教學系統設計與實現[M].北京:電子工業出版社,1995:60-90.
[3]師書恩.信息技術教學應用[M].北京:高等教育出版社,2004:19-35.
[4]鄭玉.基于Web的計算機輔助教學系統[J].電子工程師,2001(02):15-17.
[5]深泉,胡寧靜.數據庫設計和自動組卷中的幾個問題[J].湘潭大學自然科學學報,2002(03):27-31.
[6]曾新勇,李菼.通用試題庫管理系統的設計與開發[J].常州工學院學報,2009(06):46-50.