用ASP開發(fā)試題庫與在線考試系統(tǒng)(五)
...
4.3.2、查詢模塊
系統(tǒng)中的所有用戶均可檢索試題、試卷、用戶及留言等信息。只是試題檢索界面較復(fù)雜,但它已實現(xiàn)了多種條件的組合查詢,非常適合于數(shù)量繁大的試題庫。而后三者相對來說比較簡單,"默認(rèn)"或"空白"的情況下,則按該表中的系統(tǒng)默認(rèn)的字段顯示其全部信息。使用起來比較靈活、方便。
4.3.3、修改模塊
用戶除了只修改自己的部分資料(包括用戶帳號、密碼和E-Mail)外,還可修改試題及試卷,而留言則不許修改。只要用戶選擇科目和輸入編號,即可進行修改。不過,對于各表中的主鍵不準(zhǔn)修改,避免了造成系統(tǒng)中的數(shù)據(jù)混亂,或者覆蓋其它有用數(shù)據(jù)的現(xiàn)象。如果用戶執(zhí)行了非法操作,則必須重新操作。
4.3.4、組卷模塊
在組卷過程中,我們肯定會遇到有許多題目是關(guān)于同一個教學(xué)內(nèi)容的,這里稱之為關(guān)于同一考核點的試題。因此,在組裝一份試卷時,對于同一考核點的試題只能出一道題。這里設(shè)計一種快速選題算法,該算法只需經(jīng)一次比較,便可判定是否已選過該考核點的試題,且又可以有針對性地重點選取某個考核點的試題。即每一道題都設(shè)有一個相關(guān)碼,對于同一章、同一節(jié)、同一考核點的題,則相關(guān)碼相同,顯然,前面章節(jié)的相關(guān)碼都要小于后面章節(jié)的相關(guān)碼。故在組卷時,同一試卷中不允許出現(xiàn)相關(guān)碼相同的試題。所以,在選題過程中每選出一題,就要與已經(jīng)選出的題的相關(guān)碼逐一進行比較,若該題的相關(guān)碼與已選各題的相關(guān)碼均不相同,則可將該題加入到試卷中,否則,放棄該題,重新進行選題。
下面,在只考慮最佳情況下,即每次選出的題都恰好是尚未選過的,每選一道題就要與已選出的各題逐一比較,假設(shè)已選出了M題,再選下一題時,則需比較M次,不妨設(shè)一份試卷的總題數(shù)為N,在最佳情況下,則總的比較次數(shù)為:
0,1, 2,…N-2,N-1
即時間復(fù)雜度為O(N),這樣,就可保證下面算法中選擇出來的試題編號都合法。
上一條:用ASP開發(fā)試題庫與在線考試系統(tǒng)(四)
下一條:ASP字符串函數(shù)大全