C++Builder開發(fā)小型試題庫的關鍵技術_第1頁
C++Builder開發(fā)小型試題庫的關鍵技術_第2頁
C++Builder開發(fā)小型試題庫的關鍵技術_第3頁
C++Builder開發(fā)小型試題庫的關鍵技術_第4頁
C++Builder開發(fā)小型試題庫的關鍵技術_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、C+Builder開發(fā)小型試題庫的關鍵技術任俊  郭文普(西安市第二炮兵工程學院 ,陜西  西安  710025     摘  要  本文以筆者開發(fā)的小型試題庫管理系統為原型,詳細介紹了利用C+ Bulider開發(fā)小型試題庫管理系統涉及的若干關鍵技術,包括試題庫總體功能設計、隨機出題規(guī)則、隨機組卷算法、試卷生成采用的OLE技術等,并對系統中的技術難點進行了分析。    關鍵字  試題庫;隨機組卷;OLE;C+Builder6.0 1引言 

2、;   隨著高等教育教學改革深入和課程建設的逐步完善,高等院校對學生課程考試逐步向著規(guī)范化、系統化、科學化、現代化的方向發(fā)展,教學管理也向著現代化、規(guī)范化的方向邁進。為了逐步實現教考分離,更好地組織和管理考試的各項工作,客觀地評價學生對所學知識的理解和運用能力,提高教學質量,在重點課程建設任務中,我們采用C+Builder6.0完成了一個面向不同課程、功能實用的通用小型試題庫管理系統。其作用及優(yōu)勢表現在以下幾個方面:    (1教考分離,試卷規(guī)范性更強。    (2提高效率,減輕教師負

3、擔。    (3面向考試對象,靈活性更好;其隨機組卷功能可根據設置的規(guī)則,在把握大綱的同時,根據考試對象適當調整試卷內容。2試題庫管理系統的功能框架    本試題庫管理系統主要由試題庫維護、試卷管理、隨機出題規(guī)則設置、隨機組卷及試卷生成、系統設置等五個功能模塊組成,如圖1所示。圖1通用試題庫管理系統功能框架    (1 試題庫維護。利用Access設計后臺試題庫,存儲六類題型的試題(填空題、選擇題、判斷題、名詞解釋、簡答題、解答題。利用C+Builder開發(fā)前臺試題庫維護模塊

4、,包括試題的增加、修改、刪除、瀏覽等基本功能,要求能實現試題插圖的管理與維護功能。    (2 試卷管理。利用Access設計后臺試卷庫,存儲以往試卷的Word文件,利用C+Builder開發(fā)前臺試卷庫維護模塊,包括試卷的增加、刪除、瀏覽等基本功能。    (3 隨機出題規(guī)則設置。根據用戶需求實現隨機出題規(guī)則設置功能,設置的內容包括試題總分、考試內容的章節(jié)、不同題型題量、不同難易系數等。    (4 隨機組卷與試卷生成。按照用戶設置的隨機出題規(guī)則,通過隨機組卷算法從試題庫中抽

5、取相應試題生成符合要求的試卷,并通過OLE(對象鏈接與嵌入技術將依規(guī)則隨機抽取的試題生成Word文件格式的試卷,其難點在于隨機組卷算法和OLE中的圖像、文本插入技術。    (5 系統設置。為使試題庫系統適應性更廣,系統通過配置文件的方式動態(tài)加載系統的標題和背景圖片。同時,系統還支持不同用戶權限,只有管理員用戶權限可以更改系統設置,其余人員只能使用試題庫功能,而不能修改系統設置。3  隨機出題規(guī)則與隨機組卷算法3.1  隨機出題規(guī)則    考慮到試題庫應提供給用戶多種考試功能,包括對指定章節(jié)的測

6、試、對特定題型的測試或是對試卷分值、難易程度的指定,因此設計的隨機出題規(guī)則包括以下內容:    (1 試題總分設置:包括100、90、80、70、60五種總分。    (2 考試章節(jié)設置:可針對單一章節(jié)或選定的幾章進行測試。    (3 題型、題量設置:設置考試題型、題量,總分應與設置的總分一致。    (4 難易程度設置:設置試卷的難易程度,包括較易、中等、較難三級。    (5 A、B卷設置:

7、可以選擇生成一套試卷或同時生成兩套試卷。用戶根據考試對象和考試要求對以上規(guī)則進行相應的設置,并以此指導隨機組卷算法,生成符合要求的試卷。3.2  隨機組卷算法    為了實現從試題庫中隨機生成考試試卷,需建立兩個試題表分別存儲A試卷、B試卷對應的試題。我們設計的隨機組卷算法如圖2所示。圖2隨機組卷算法流程圖4CB中利用Ole服務器生成Word試卷    僅僅將考試所需試卷內容抽取到試卷表中是不夠的,還必須將試卷表中的試題輸出到Word文件中,才能完成后續(xù)的打印、復印等工作。因此如何將試卷表中的試題輸出到W

8、ord文件中是一個必須解決的問題,特別是當試題中既有文字也有試題插圖時,這個問題就更加復雜化了。為解決該問題,我們采用了OLE技術,OLE技術是微軟提出的一種軟件產品規(guī)范,是應用程序間交換數據、相互操作的標準。OLE技術的實質是通過編程來控制其它的應用程序或者DLL(動態(tài)鏈接庫中的對象。采用這一技術的應用程序不僅能使用駐留在自己程序中的對象,而且能使用駐留在系統里其它程序中的對象,并能夠訪問這些對象的屬性和方法。在CB中使用OLE技術嵌入并控制Word是擴充系統文字處理功能最簡潔、高效的途徑,其關鍵步驟如下:    (1 創(chuàng)建OLE對象。Variant

9、VwordApp,VwordBasic;VwordApp = CreateOleObject("Word.Application";  / 創(chuàng)建Word應用程序對象VwordBasic = CreateOleObject("Word.Basic";   / 創(chuàng)建Word VBScript對象    (2 新建Word文檔并創(chuàng)建操作圖形的Shape對象。Variant Vshape;VwordBasic.Exec(Procedure("FileNew"<<

10、"Normal";   / 用模板新建Word文檔Vshape = VwordApp.OlePropertyGet("ActiveDocument". OlePropertyGet("Shapes";    (3 將試題內容與試題插圖寫入Word文檔中,以試題表中一條記錄為例。AnsiString SaveImage = GetCurrentDir(+"image.bmp";  / 暫存圖像路徑及文件名AnsiString Stnr = 

11、; ADOQueryA->FieldByName("stnr"->AsString;  / 取試題內容VwordBasic.Exec(Procedure("Insert" << Stnr;    / 向Word文檔中寫試題內容blob=(TBlobField *ADOQueryB->FieldByName("image";  / 取試題插圖if(!blob->IsNull       

12、60;    / 判斷該試題是否有插圖   blob->SaveToFile(SaveImage.c_str(;       / 暫存為圖像文件   Vshape.OleFunction("AddPicture",SaveImage.c_str(;  /將圖像插入Word文檔    (4 保存試卷。AnsiString SaveFile = GetCurrentDir(+"

13、;Test_A.doc"; / 試卷路徑及文件名VwordBasic.Exec(Procedure("FileSaveAs" << SaveFile;  / 保存試卷5結束語    本試題庫系統的程序開發(fā)已基本完成,正處于試用階段,該系統除具備試題庫管理、隨機組卷及試卷生成等基本功能外,還實現了歷史試卷的管理和系統設置功能,希望本系統的設計與實現能為開發(fā)類似試題庫系統的人員在一定程度上起到借鑒作用。參考文獻1 鄧又明,劉慶紅,董光. 試題庫管理系統的分析與設計J. 現代情報,2005年第4期,157-1582 任治斌,耿國華,張富春等. 在VFP下高等代數試題庫的設計與實現J. 微計算機應用,第26卷第5期,2005年9月,638-6403 劉光. C+Builder數據庫系統設計與開發(fā)M,清華大學出版社,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論