摘要:在教師CAI教學中經常需要使用Authorware制作練習題。該文以單選題為例,介紹了一種簡單的自動出題系統。該系統使用文件文件制作題庫,在Authorware中通過文件操作語句直接訪問文本文件,實現了自動出題、自動批改的功能。
關鍵詞:Authorware;文本文件;自動出題
中圖分類號:G434文獻標識碼:A 文章編號:1009-3044(2009)14-3693-02
Automatic Examination System in Authorware Based on Text File
FU Li-ping
(Economic Management Secondary Vocational School, Nanyang 473000, China)
Abstract: Teachers often need producing exercises in CAI Teaching. In this paper, taking Individual multiple-choice example, using text file to produce item bank, a simple Automatic problem building system is described. The functions of automatic problem building and automatic judgment are realized through file operations statement accessing text file directly in Authorware.
Key words: Authorware; text file; automatic problem building
1 引言
近年來,隨著校園信息化建設的推進,多媒體輔助教學得到了深入和廣泛的應用。其中Authorware作為一種功能強大的多媒體課件制作工具,被廣泛應用于多媒體教學課件的制作。在課件制作中經常需要包含練習題部分,教師在制作練習題時主要有以下方法:1) 使用圖標構建交互結構逐題制作。這種方法不需要編程,簡單易用,但實現起來很煩瑣,且通用性差,適合于習題量較小且不懂編程的廣大非計算機專業教師;2) 使用ACCESS等數據庫軟件建立題庫,然后通過配置ODBC使Authorware與數據庫連接。這種方法開發的題庫功能強大,可移植性強,但編程量大,需要制作者掌握程序設計與數據庫等相關專業知識,適合于計算機專業人員制作習題量大的專業練習型課件,不適宜于廣大教師在日常教學中靈活使用。
本文介紹了一種制作題庫的簡單方法,采用文本文件制作題庫,在Authorware通過文件操作語句直接訪問文本文件,具有題庫設計簡單,編程量小,移植性好等特點,易被廣大教師掌握使用。下面以單項選擇題為例,介紹題庫和程序的具體設計方法。
2 題庫設計
建立一個“自動出題系統”文件夾,隨后將Authorware程序文件和題庫保存在此同一個文件夾下。在該文件夾下建立一個“txt”子文件夾,在其中建立一個文本文件并輸入習題。其中每道習題占用兩行,第一行用來輸入單選題目,第二行用來輸入四個選項和正確答案,輸入各選項和答案時按TAB鍵隔開。以“tk.txt”為名保存題庫文件。最終形成的題庫文件如圖1所示。
3 Authorware程序結構設計
在Authorware中建立如圖2所示程序結構。下面分別介紹各模塊功能,并給出主要程序代碼。
3.1 “初始化”代碼
s:=ReadExtFile(FileLocation^\"\\\xt\\\k.txt\")--將題庫文件讀取到變量s中
sum:=LineCount(s)--將總行數保存在變量sum中
n:=1 --當前行為第一行
3.2 “出題”代碼
--將題目和各選項讀取到各個變量中
Title:=GetLine(s,n)--將題目行內容讀取到變量Title中
Option:=GetLine(s,n+1)--將選項行內容讀取到變量Option中
OptionA:=GetWord(1,Option)--從變量Option中把選項A讀取到變量OptionA中
OptionB:=GetWord(2,Option)--把選項B讀取到變量OptionB中
OptionC:=GetWord(3,Option)--把選項C讀取到變量OptionC中
OptionD:=GetWord(4,Option)--把選項D讀取到變量OptionD中
Answer:=GetWord(5, Option)--把答案讀取到變量Answer中
3.3 “出題”界面的制作
選擇文本工具,分別輸入代表題目和各選項的變量,并用大括號引起來。如圖3所示。
3.4 “單選按鈕”交互結構的制作
向流程線上拖入一個交互圖標命名為“單選按鈕”,在其右側拖放四個計算圖標,形成一個帶有四個分支的按鈕交互結構。設置按鈕樣式為“標準Windows收音機按鈕系統”,設置各按鈕名稱為“A.”、“B.”、“C.”、“D.”,設置響應分支為“返回”。
其中,選中各按鈕時執行不同的程序代碼。選項A中的程序代碼如下:
Checked@\"A.\":=1 --使按鈕A處于選中狀態
--使其它三個按鈕處于非選中狀態
Checked@\"B.\":=0
Checked@\"C.\":=0
Checked@\"D.\":=0
UserAnswer:=\"A\" --將用戶選擇的答案“A”存放在變量UserAnswer中
選項B中的程序代碼如下:
Checked@\"B.\":=1 --使按鈕B處于選中狀態
--使其它三個按鈕處于非選中狀態
Checked@\"A.\":=0
Checked@\"C.\":=0
Checked@\"D.\":=0
UserAnswer:=\"B\" --將用戶選擇的答案“B”存放在變量UserAnswer中
選項C和D中的程序代碼原理同上,稍加變動即可。
3.5 “題目翻頁”交互結構的制作
向流程線上拖入一個交互圖標命名為“題目翻頁”,在其右側拖放三個計算圖標,形成一個帶有三個分支的按鈕交互結構。設置按鈕樣式為“標準Windows收音機按鈕系統”,設置各按鈕名稱為“上一題”、 “下一題”和“判斷正誤”,設置響應分支為“返回”。
為了防止用戶誤操作,當屏幕上出現第一題的時候,讓“上一題”按鈕隱藏,當屏幕上出現最后一題的時候,讓“下一題”按鈕隱藏。預實現此功能需設置“上一題”按鈕的“激活條件”為“n>1”, 設置“下一題”按鈕的“激活條件”為“n 其中,“上一題”中的程序代碼如下: --使四個按鈕均處于非選中狀態以清除上一次的選擇 Checked@\"A.\":=0 Checked@\"B.\":=0 Checked@\"C.\":=0 Checked@\"D.\":=0 UserAnswer:=\"\"--清空用戶答案 n:=n-2--將題庫當前行向前移兩行(每道題占用兩行) GoTo(@\"出題代碼\") --將程序轉向\"出題代碼\"計算圖標 “下一題”中的程序代碼如下: --使四個按鈕均處于非選中狀態以清除上一次的選擇 Checked@\"A.\":=0 Checked@\"B.\":=0 Checked@\"C.\":=0 Checked@\"D.\":=0 UserAnswer:=\"\"--清空用戶答案 n:=n+2--將題庫當前行向后移兩行(每道題占用兩行) GoTo(@\"出題代碼\") --將程序轉向\"出題代碼\"計算圖標 “判斷正誤”中的程序代碼如下: if UserAnswer =\"\" then --如果用戶選取答案為空則提示\"請選擇一個答案!\" SystemMessageBox(WindowHandle, \"請選擇一個答案!\", \"Information\", 64) -- 1=OK else if Answer = UserAnswer then--如果標準答案和用戶選取答案相同 SystemMessageBox(WindowHandle, \"恭喜您答對了!\", \"Information\", 64) -- 1=OK else SystemMessageBox(WindowHandle, \"真遺憾,您答錯了!\", \"Error\", 16) -- 1=OK end if end if 程序運行后如圖4所示。 4 小結 本程序編制完成后,能夠自動將文本文件中的題庫讀取為單選題形式,學習者選擇答案后,單擊“判斷正誤”按鈕可以即時批改,非常便于學習者自主練習。對于教師而言,習題及答案的添加、刪除和更改只需打開文本文件直接編輯后保存即可。因其易用性和實用性,在本校教師中得到了廣泛推廣。源程序編制過程簡潔易學,一方面拋開了使用圖標逐個制作習題的繁瑣,另一方面避開了使用ODBC配置數據源的艱深,使廣大教師易于掌握和修改。參照本程序的設計思路,還可以很方便地開發出多項選擇題、填空題等其它常見題型。 參考文獻: [1] 沈大林.中文Authorware 7.0案例教程[M].北京:電子工業出版社,2007. [2] 袁海東.Authorware 7.0變量與函數參考手冊[M].北京:電子工業出版社,2004.