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