wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5904|回復: 3
收起左側

試題庫自動組卷系統(tǒng)(VB源碼與設計論文)

[復制鏈接]
ID:360155 發(fā)表于 2018-6-27 12:21 | 顯示全部樓層 |閱讀模式
基于vb做的vb試題組卷系統(tǒng)
0.png

全部資料51hei下載地址:
VB058試題庫自動組卷系統(tǒng)計算機畢業(yè)設計.rar (552.88 KB, 下載次數(shù): 32)



目 錄

摘要........2
英文摘要.2
第一章 引言 .......3
第二章 系統(tǒng)分析....3
2.1 試題庫分析..3
2.2 組卷分析..4
2.3 系統(tǒng)簡介..5
第三章 數(shù)據(jù)庫設計....6
3.1 系統(tǒng)數(shù)據(jù)庫..6
3.2 臨時數(shù)據(jù)庫..7
第四章 系統(tǒng)總體結構設計......8
第五章 模塊設計及實現(xiàn).......9
5.1 用戶登錄模塊..9
5.2 系統(tǒng)維護模塊....10
5.2.1 新建數(shù)據(jù)庫...10
5.2.2 修改密碼 ..11
5.2.3 添加用戶11
5.3題庫管理模塊...11
      5.4自動組卷模塊...13
5.4.1 功能 ..14
5.4.2 設計思路14
  5.4.3 組卷策略分析....14
  5.4.4 代碼實現(xiàn)....16
  5.4.5 試卷編輯22

結束語23
參考文獻...23

  • 引言
考試是教師檢查學生學習情況的必要手段,但出卷卻是一種繁重的智力和體力勞動,傳統(tǒng)的標準化試卷命題,需要由教學專家組成一個命題班子,根據(jù)許多優(yōu)秀教師多年的教學經(jīng)驗,從貫徹教學大綱要求,到試卷意圖的組織,經(jīng)過反復的推敲,才能完成一份標準化的試卷。這樣的命題方式不僅工作任務繁重而且試卷的標準化程度、難易程度、題量大小等各方面難以控制,難以形成有效的試題庫,給試題和試卷的管理帶來很多問題和困難。鑒于這種情況,利用計算機進行試卷的自動生成并逐步積累形成有效的試題庫,對試題和試卷的管理將變得高效而便捷,對提高工作效率,使試卷管理逐步走向正規(guī)化自動化將起到十分重要的作用。同時使出卷工作變得輕松愉快,從很大程度上減輕了教師利用傳統(tǒng)的出卷方式組卷的繁重工作量,大大節(jié)省了老師的工作時間,便于教師有更多的時間和精力致力于教學方法的研究。今日, 隨著計算機的應用的普及和硬件設備性能和軟件制作水平的提高,為研制開發(fā)高性能的試題管理軟件提供了條件。   




      • 系統(tǒng)分析___

作為在教學第一線的老師,往往需要及時了解學生對某一章節(jié)知識掌握的情況,經(jīng)常需要對學生進行形成性測驗和終結性測試,來發(fā)現(xiàn)教學中的問題,從而調(diào)整教學進度,改進教學方法。不少軟件開發(fā)者看到了教育工作者在這一領域的需求相繼推出了一批與試題管理有關的操作軟件,其中不乏非常出色的作品。但是從試題管理這一方面來看,用戶反應平淡,感覺中意的不多。我們不禁要問:為什么是這樣的結局?老師們最需要的是什么呢?
§2.1 試題庫分析  在試題庫方面,老師最需要的是對試題庫管理的自主性。老師們渴望能自由地操縱試題庫,具體表現(xiàn)在以下三個方面:
   (1)自主初始化試題庫;
   (2)自主維護試題庫;
   (3)自主設計試卷。
※自主初始化試題庫
即用戶擁有創(chuàng)建新試題庫的權力,用戶能夠根據(jù)自己的需要,設計試題的儲存方案以及試題的屬性名和各屬性值,實現(xiàn)試題庫用戶個性化設計,讓試題庫真正成為用戶自己的試題庫。。用戶不喜歡這一種不能自主控制的試題分類方案,用戶希望自主地初始化試題庫。
※自主維護試題庫
即用戶具有添加、修改和刪除試題的權力,實現(xiàn)試題庫的可擴充性和開放性,使用戶對試題庫具有至高無上的支配權。現(xiàn)在已經(jīng)推出的幾乎所的試題管理軟件都不具備這樣的功能,用戶所使用的試題被程序制作者預先寫在某個文件中,這些文件不是隱藏得讓用戶難以找到就是經(jīng)過加密處理,用戶根本就不可能通過其它方式(比如Word、Access、WPS等)打開并看到它,更談不上對它的擴充、修改和對某個試題的刪除了。由于用戶沒有自主維護試題庫的權力,新試題無法錄入,陳舊試題無法刪除,這樣的試題庫在較短的時間內(nèi)就逐漸老化、失去活力。用戶需要自主地維護試題庫,希望及時地更新試題庫。
※自主設計試卷
現(xiàn)有的某些試題管理軟件不僅不支持試題庫中試題的修改,生成的試卷也不可以修改,連加一個空格修改字體都不行,試卷保存后不能為其它系統(tǒng)(比如Word、WPS等)識別,只能從打印機上輸出,這種方案沒有多少實用性。
試題庫要保證一定的規(guī)模,給隨機選擇以較大的范圍。建立題庫是一個復雜的系統(tǒng)工程,首先要建立系統(tǒng)的數(shù)學模型,然后確定試題的屬性指標以及試題的組成結構,再組織大批量的優(yōu)秀學科教師編寫試題,為了保證這些試題的科學性和有效性,對每一題試題進行抽樣測試,對試題參數(shù)標注的有效性進行校正,建立起一個實用的題庫系統(tǒng),另外,應該對題庫的管理實行一定程度上的開放性,以不斷提高題庫的質(zhì)量和可維護性。建立題庫是一項相當復雜的系統(tǒng)工程,不僅開發(fā)需要大量的人力和時間,而且還要花費相當?shù)臅r間和人力物力去維護調(diào)整,才能真正在教育中發(fā)揮作用。
§2.2 組卷分析 一般地說,對題庫系統(tǒng)組織試卷的要求是根據(jù)出卷者的需求產(chǎn)生一份對于測驗目標(如教學評價、學生能力水平評價等)有價值的測驗試卷。因此,在組卷時,用戶要提出組卷要求,通常包括題目內(nèi)容范圍、題目類型、題目數(shù)量和測驗目標等方面。這些要求應轉化成試卷每個題目的量化參數(shù)才能被系統(tǒng)使用。例如按照測驗目標各知識點內(nèi)容所占比例數(shù),各層次的目標(記憶、理解、綜合、應用等)分別由哪些題型反映,每種題型在試卷中的數(shù)量,各難度級在卷中所占比例,難度等要求。量化工作可以由人工完成,然后按一定格式送入系統(tǒng)中。也可以由系統(tǒng)在一定程度上自動完成量化轉換,形成相應的組卷參數(shù)。
要解決的一個首要問題是組卷策略的選擇。它在很大程度上決定著系統(tǒng)的成敗與否。組卷策略的實質(zhì)是將對人比較直觀明了的組卷參數(shù)變換成計算機能夠直接操作的試題屬性項,然后根據(jù)這些屬性項,在題庫中抽取試題組成試卷。因此,完整的組卷策略應該由三部份組成:試題屬性項定義、組卷參數(shù)的定義、變換算法的說明。所謂計算機組卷至少應該保證以下幾個方面的平衡方可考慮試卷的可接受性:
a)  整卷的題型比例要合理

    •          整卷的章節(jié)比例要合理
    •          整卷的難度分配要適度
d)  要保證隨機性
一種做法是,讓出題者按照一定格式描述試卷編制計劃信息,如卷內(nèi)題目在題型和難度上的分布,知識點內(nèi)容在各目標層次上的分布(包括數(shù)量),然后通過一定算法變換成試卷試題的具體要求。另外一種做法是將課程目標與內(nèi)容信息在系統(tǒng)中建立一個目標/內(nèi)容分布關系表。
在題庫中按上述量化的組卷要求查找符合條件的題目進行出題組卷,一般都采用匹配方法。精確匹配可以組出完全符合量化標準的試卷,但有時會出現(xiàn)組卷策略無法實現(xiàn)的情況(即查不到完全符合條件要求的題目)。為了避免這種情況,設計組卷策略時要考慮怎樣解決它。常用的辦法之一是形成并試用新的組卷策略,這種做法會帶來時間上的浪費。另一種辦法是把精確匹配改成近似匹配。采用近似匹配時應事先規(guī)定所選題目在內(nèi)容、目標、題型與難度等各指標上是否可以與出題要求不完全一致,能不能有一一定的模糊度。若模糊度為0表示必須精確匹配;而非零值則青示可有多大的變異度。在后種條件下,若找不到完全符合要求的題目,就可以在模糊度許可范圍內(nèi)查找近似匹配的題目。
        §2.3本系統(tǒng)簡介:基于以上諸因素的考慮,設計了本系統(tǒng):本系統(tǒng)以高一的英語教育為背景進行設計,其意旨在于提供一個適合于形成性測試和階段性測試的自動組卷系統(tǒng)。本系統(tǒng)能快速方便地提供各種要求的試卷,幫助教師把握教學的進度,及時地反饋教學中的問題,以改進教學方法和調(diào)整教學重點。
功能:本系統(tǒng)主要有2大功能模塊組成:一,題庫管理;二,自動組卷。具體的功能及實現(xiàn)將在后面做詳細介紹。
特點:1.易用性:人機交互界面友好,不要求使用者具有太多的計算機知識
      2.先進性:前端自動組卷+后端題庫管理+優(yōu)選試題
3.合理性:結合國家教材,符合教學大綱。
4.實用性:教師減負第一步,幫助教師從煩瑣的出卷工作中解脫出來
實現(xiàn)工具:基于試題庫的自動組卷系統(tǒng)即以強大的試題數(shù)據(jù)庫作為后臺支持,由于Access是目前比較流行的一種數(shù)據(jù)庫軟件,它允許并很容易地用多種方式進行篩選、分類和更新數(shù)據(jù),因此本系統(tǒng)中采用Access來構建系統(tǒng)數(shù)據(jù)庫。作為與用戶做交互界面的前臺,本系統(tǒng)采用Visual Basic 6.0作為開發(fā)工具,它具有豐富的控件、先進的ADO數(shù)據(jù)訪問技術、數(shù)據(jù)報表輸出技術等。

第三章  數(shù)據(jù)庫的設計
數(shù)據(jù)庫的庫結構對于整個系統(tǒng)的性能起著重要作用。它是本系統(tǒng)的基礎。一個題庫將存放大量的題目,這些題目在計算機內(nèi)如何存儲將直接影響題庫系統(tǒng)的工作效率和效果,因此題庫結構的設計是題庫系統(tǒng)設計開發(fā)的關鍵一環(huán)。題庫結構設計時要考慮題庫的基本特征。題庫結構設計最基礎的工作應包括確定題目類型、規(guī)定試題屬性及題庫總體數(shù)據(jù)結構的確立等幾方面。題庫是計算機輔助測驗系統(tǒng)的基礎。一個大的測驗系統(tǒng)的題庫應能容納足夠數(shù)量的題目,這些題目在題庫中的組織、分類及其特征信息的確立與描述將直接影響系統(tǒng)的工作效率與效果。
本系統(tǒng)總共構建了2個數(shù)據(jù)庫文件:系統(tǒng)數(shù)據(jù)庫datadb和臨時數(shù)據(jù)庫temp。
  §3.1 datadb 數(shù)據(jù)庫   因為本系統(tǒng)是以英語教學為例,因此構建了一個用于存儲英語試題及相關屬性的試題數(shù)據(jù)庫。在程序中設置別名為datadb。在該庫中共建立了6張表,其表名分別為:
   a:選擇題
   b:完型填空
   c:閱讀理解
   d:短文改錯
   e:書面表達
   f:登錄
◘3.1.1 試題文件
a~e是對應于英語中常見的五種題型的試題文件表。為了通用起鑒,為每張表設置了相同的字段,依次為題號、分值、難度、章節(jié)分布、題目以及答案6個屬性。
· 題號---整型,設置為主鍵,即為試題庫中題目的編號;
· 分值----整型,是該題的分數(shù);
· 難度----字符型,它的設置采用了3位編碼:用三個數(shù)字來表示該題的難度。對于不同的表,它的含義略微不同。在完型填空、短文改錯中,左起第一位、第二、第三位依次表示在該題中較容易、中等難度、較難得分的題目總分值(比如在完型填空中,有25小題,若每題為1分,則難度系數(shù)為988表示的意思為有9題是容易的題目,有8題為中等的,另外的8題是較難的題目),對于書面表達這種大題,沒有小題的設置,則難度系數(shù)的含義稍有差異(若書面表達的總分為20分,則難度為875表示8分是比較容易得到的,7分是中等水平的學生才能獲得的,而最后的5分則是較少部分的學生才能的到。)對于選擇題而言,它每題的分值較少,因此不再對分值拆分,只在相對難度位置上出現(xiàn)該題分值,如100表示該題屬于容易題,總分為1分,010表示該題為中等題。雖然各表中的難度屬性的含義看似有上述的差異,但是對于表達難度這個概念而言,它們所能實現(xiàn)的功能是一樣的,因此在程序中對于每個表中的難度做同樣的處理。
· 章節(jié)分布----字符型。在該系統(tǒng)設計的過程中,通過對高一的英語教材的分析和研究,把整個年級階段的知識點按教學進度劃分為十個章節(jié),用A~J表示,在A~J之后用數(shù)字表示的則是該章節(jié)中所涉及的細微的知識點。(001:虛詞;010實詞;011: 時態(tài);100:語法;101:結構;110:語態(tài);111:情景意境),比如某選擇題的的章節(jié)分布為C110表示的是它所要考查的知識點是屬于第三章中的語態(tài)。定義了總體上的A~J個章節(jié),則可以在不同的教學時期,選擇不同章節(jié)屬性的試題來測試,以避免試題不適合教學進度的情況。之所以要對每個章節(jié)分開定義001~111等知識點,是因為由于教學進度不同,雖然是相同的知識點,但是在不同階段對學生的要求是不一樣的。
· 題目---備注型。這是在最終生成的試卷中真正要出現(xiàn)的部分。
· 答案---備注型。同題目的性質(zhì)一樣,但它們是分別輸出到不同的文檔中相互獨立保存和打印的。
以上描述了存儲五種題型的5張數(shù)據(jù)表中各個字段含義。接下來來介紹一下最后一張數(shù)據(jù)表---登錄表中的屬性設置。
◘3.1.2 登錄文件
該表中總共設置了三個字段屬性---用戶名,密碼,訪問次數(shù)。
· 用戶名--字符型,是每條記錄中的主鍵,值唯一,不能重復。數(shù)字、字母都可以。在系統(tǒng)的使用過程中,具有一定權限的管理員可以對其進行刪除和增加。
· 密碼--用于核準用戶的權限,避免一些不合法的人進入系統(tǒng)進行破壞活動。
· 訪問次數(shù)--整型  用來顯示該用戶已經(jīng)使用過本系統(tǒng)的次數(shù)。
§3.2 tempdb數(shù)據(jù)庫
其中只有一張數(shù)據(jù)表—temp。它用來存儲在抽取試題過程中產(chǎn)生的一些中間數(shù)據(jù)。有2個字段:題目和答案,均為備注型。在系統(tǒng)運行過程中,該表中的數(shù)據(jù)會被不斷的更新。
  •            系統(tǒng)總體結構設計
根據(jù)系統(tǒng)各模塊的實現(xiàn),系統(tǒng)主要結構即流程圖如下所示:
瀏覽試題
刪除試題
修改試題
更新試題
添加試題
退出
數(shù)
據(jù)庫
添加用戶
修改密碼
隨機抽題
編輯試卷
              
圖4-1總體結構圖
  •                  功能模塊的設計及其實現(xiàn)
§5.1   用戶登錄模塊
● 功能:該模塊是檢驗用戶的合法性

● 窗口設計如下:
               圖5-1 登錄界面
● 設計思路:當該模塊被加載時,從數(shù)據(jù)庫中的登錄表中讀取已經(jīng)存在的用戶名。將用戶名逐一添加到組合列表框的選項中,以供用戶選擇,(可以避免用戶手動輸入之繁),在用戶選擇了某個用戶以及在密碼框中輸入了密碼之后(以*顯示),在按下“登錄”鍵的時候,系統(tǒng)從數(shù)據(jù)表中找到對應該用戶名的記錄,然后檢查所輸入的密碼是否與數(shù)據(jù)庫中的密碼一致,若不一致,則提示密碼錯誤,拒絕登錄;若一致,則顯示該用戶以往登錄的次數(shù),允許進行后面的操作。
● 代碼實現(xiàn) (以下代碼中‘后為注釋)
    Private Sub Form_Load()   
login.Picture = LoadPicture(App.Path & "\login2.jpg")
Adodc1.ConnectionString= “provider=Microsoft.Jet.OLEDB.4.0;DataSource="+App.Path+\datadb.mdb"         
Adodc1.RecordSource = "登錄"              ‘ 數(shù)據(jù)庫連接
Adodc1.Refresh
Adodc1.Recordset.MoveFirst
Do While Not Adodc1.Recordset.EOF
   Combo1.AddItem Adodc1.Recordset("用戶名")
   Adodc1.Recordset.MoveNext
Loop
End Sub
     Private Sub denglu_Click()
Adodc1.Recordset.MoveFirst
For p = 1 To userid
   Adodc1.Recordset.MoveNext  
Next
  If Text1.Text <> Adodc1.Recordset("密碼")  Then
    MsgBox "您輸入的密碼不正確,請重新登錄", vbCritical, "錯誤提示"
Else
cnt = Adodc1.Recordset("訪問次數(shù)") + 1
k = MsgBox("祝賀你成功登錄 " + Chr(13) + "這是您第" & cnt & "次訪問該系統(tǒng)", vbOKOnly, "Congratulations")
     Adodc1.Recordset("訪問次數(shù)") = cnt
     Adodc1.Recordset.update
  End If
If  k = 1  Then
enter.Visible = True
Unload Me
Load enter
End If
End Sub
§5.2  系統(tǒng)維護模塊
功能:對系統(tǒng)的安全等做一些基本的維護,如添加數(shù)據(jù)庫,修改密碼,增加用戶等。由于該模塊功能只有具有一定權限的管理員才能使用,因此在激活該菜單之前要求輸入管理員密碼。各具體功能設計如下:
◘5.2.1  新建數(shù)據(jù)庫:用戶通過文件對話框選擇保存數(shù)據(jù)庫的路徑,鍵入數(shù)據(jù)庫名,完成以后就會在選定的路徑下新建一個access數(shù)據(jù)庫。
其實現(xiàn)代碼如下:
  Private Sub newdb_Click( )
CommonDialog1.Flags = 0
CommonDialog1.ShowSave
newd = CommonDialog1.FileName
Set MSAccess = New Access.Application
  MSAccess.Visible = True
MSAccess.NewCurrentDatabase (newd)
   End Sub

◘5.2.2 修改密碼:窗口啟動時,從數(shù)據(jù)庫中讀取所有用戶名,添加于列表中,要求用戶輸入原始密碼和新密碼,若原始密碼與數(shù)據(jù)庫中的密碼數(shù)據(jù)一致,則把新密碼中值替換數(shù)據(jù)庫中的原始密碼字段,保存,若輸入的原始密碼不正確,則給出出錯信息。窗口如圖5-2所示:
圖5-2 修改密碼界面
     代碼實現(xiàn)同登錄類似,在此略。
◘5.2.3添加用戶:通過向文本框中輸入用戶名和密碼向“登錄”表中追加一條新的記錄,同時設置該字段的“訪問次數(shù)”值為0。
§5.3 題庫管理模塊
        ● 功能 包括對庫中試題的瀏覽、刪除、修改、更新、添加等。
        ● 特點
1.難度、題型、分值、章節(jié)均可根據(jù)學校實際教學使用需要任意設置。
2.提供開放式試題數(shù)據(jù)庫功能,用戶可方便的錄入、編輯、修改和保存自己的試題和試卷,并且能直接加入本系統(tǒng)的數(shù)據(jù)庫,利用本系統(tǒng)進行統(tǒng)一管理。
        窗口設計如下:

                           圖5-3  題庫管理窗口
◘5.3.1 瀏覽 當單擊“題庫管理”下的“瀏覽”子菜單時,出現(xiàn)類似如上窗口的界面,從左邊的組合框中選擇科目“英語”及題型,就可以在主窗體中顯示相對應的數(shù)據(jù)庫中的內(nèi)容,它是由adodc1(0..4)5個控件對各題型的數(shù)據(jù)表進行綁定,然后利用datagrid1(0..4)控件顯示出來。由于題目這個備注型字段中的字符較多,不能全部在字段欄里顯示,加之題目的內(nèi)容是用戶最為關注的,因此單獨設立了對應的題目區(qū),它也由5個文本框text1(0 ..4)實現(xiàn),當用戶選擇了題型后,在程序中,通過設置各個datagrid控件及文本控件的Zorder值以達到只向用戶展示所選擇題型的內(nèi)容的出現(xiàn)效果。
Private Sub Combo2_Click()
   i = Combo2.ListIndex
     Text1(i).ZOrder
     DataGrid1(i).ZOrder
     Adodc1(i).ZOrder
     Adodc1(i).Visible = True
End Sub
      ◘5.3.2刪除:單擊該子菜單以后,會彈出確認窗口,以免誤操作。它將刪除當前指向的記錄。
    Private Sub delete_Click()
Dim r As Integer
r = MsgBox("確定刪除當前記錄?", vbExclamation + vbYesNo)
If r = vbYes Then
i = Combo2.ListIndex
Adodc1(i).Recordset.delete
Adodc1(i).Recordset.MoveNext
If Adodc1(i).Recordset.EOF Then
Adodc1(i).Recordset.MoveLast
End If
End If
End Sub
◘5.3.3添加:單擊該項后,主窗體中會顯示一個新的界面,有5個文本框,用于用戶輸入題目的屬性.
◘5.3.4 更新:在對所要添加的記錄數(shù)據(jù)輸入完以后,再單擊“更新”,一條新的記錄就才添加到數(shù)據(jù)庫中,可以使用“瀏覽”查看新的數(shù)據(jù)庫結構。
Private Sub update_Click()
i = Combo2.ListIndex
Adodc1(i).Recordset.AddNew
Adodc1(i).Recordset("題號") = CInt(Text2(0).Text)
If i = 0 Or i = 4 Then
Adodc1(i).Recordset("知識點") = (Text2(3).Text)
End If
Adodc1(i).Recordset("分值") = CInt(Text2(1).Text)
Adodc1(i).Recordset("難度") = Text2(2).Text
Adodc1(i).Recordset("題目") = Text2(4).Text
Label1.Visible = True
Label2.Visible = True
Label3.Visible = True
Label4.Visible = False
Label5Visible = False
Label6Visible = False
Label7.Visible = False
For i = 0 To 4
DataGrid1(i).Visible = True
Text1(i).Visible = True
Combo1.Visible = True
Combo2.Visible = True
Text2(i).Visible = False
Next i
Label3.Visible = True
End Sub
◘5.3.5 修改:由于已經(jīng)把datagrid控件的屬性設置為可以修改的,因此可以直接在控件中修改數(shù)據(jù),但是要注意的一點是,僅僅在datagrid中修改過的數(shù)據(jù)并不能保存到數(shù)據(jù)庫中,因此修改完以后需要按“修改”菜單,這樣修改過的記錄在數(shù)據(jù)庫中才會被更新。
Private Sub modify_Click()
i = Combo2.ListIndex
Adodc1(i).Recordset.update
End Sub
§5. 4 自動組卷模塊
              ◘5.4.1功能: 根據(jù)用戶輸入的題型分布、章節(jié)分布以及難度分布等要求,根據(jù)一定的組卷策略從試題庫中隨機抽取出滿足條件的試題組成一份使用戶滿意的試卷。
            ◘5.4.2設計思路:
    首先由用戶選擇試卷中知識點的范圍,即所屬涉及的章節(jié),給出需要的各章節(jié)分布、題型分布(各種題型中分值的百分比)和難度分布。章節(jié)的選擇由具有10個項的組合框給出,用戶選定了某個章節(jié)以后,該章節(jié)就會被添加到一個新的列表中,通過在文本框中輸入數(shù)值來確定章節(jié)分布。題型分布只需在對應文本框中輸入值即可。難度有三種級別:容易,中等,難。對應的數(shù)值表示所要求的試卷生成后整份試卷中容易、中等和難題的分值,它們對應于試題庫中“難度”屬性的值。輸入要求得到確認后,開始組卷工作,即從試題庫中抽取滿足條件的試題。根據(jù)一定的組卷策略,組卷過程中產(chǎn)生的一些臨時數(shù)據(jù)放在一個臨時庫文件temp中,同時temp中的數(shù)據(jù)也要不斷的更新,使得最后留在temp庫中的數(shù)據(jù)是滿足條件的試題。當完成抽題以后,調(diào)用word應用程序,將temp中的記錄逐一的寫入到word文檔中,這樣用戶就可以利用word提供的一些編輯功能對試題做一些編輯調(diào)整和打印存檔。
◘5.4.3組卷策略分析:
組卷策略是指系統(tǒng)進行組卷的方式方法。它是題庫系統(tǒng)自動生成有效(對測驗目標來說)試卷的關鍵。組卷策略設計主要涉及成卷要求的數(shù)量化、卷面分數(shù)分配、庫中選題等問題的處理。
  本系統(tǒng)主要是依托于隨機函數(shù)實現(xiàn),在考慮滿足各約束條件間的相互制約的過程中又利用動態(tài)優(yōu)先權和誤差平均分配等策略。
隨機函數(shù)指的是系統(tǒng)vb提供的隨機函數(shù),從滿足某些檢索條件的試題庫中隨機的抽取一題,之后來判斷它的各個屬性。若最終隨機產(chǎn)生的n個試題中,他們之間的約束條件滿足要求,則可以被做為一份試卷的試題。
動態(tài)優(yōu)先指的在組卷過程中先進行大題的選擇,如書面表達,短文改錯等。在組卷過程中局部的約束條件多達好幾種,在本系統(tǒng)中涉及到的有題型的比例,章節(jié)的比例以及難度的比例。選中一道題,對應著這些指標中的值就會增加,使它們更接近預定的分值。在選題的開始階段,不存在約束條件間的牽制問題,因為各項屬性都有很大的取值范圍。但隨著被選題數(shù)的增加,取值范圍的縮小,矛盾便隨之產(chǎn)生,出現(xiàn)了一道待選試題的某項指標中達到了預定值,而其它項指標卻超出了范圍的現(xiàn)象,尤其是分值較高的大題,到后期很難滿足要求,往往會導致選題進行到一定程度的時候,徘徊在某一個狀態(tài)下,無法繼續(xù)進行下去的局面,為了避免這中情況的發(fā)生,可考慮利用優(yōu)先權的方法把越不容易選擇的試題放在
前面優(yōu)先選擇,而把選擇題放在最后選擇,主要依靠選擇題的選擇來平衡各約束屬性間的制約。
誤差平均分配:理想的組卷結果是各項約束值之間百分之百的滿足約束條件,但是事實上,由于隨機技術的采用,約束間的互相牽制,以及試題庫中題量的限制和屬性設置間的重疊等,在組題過程中很難達到理想的狀態(tài)。如果把條件限制的過于絕對,則有時候往往會因為數(shù)分之差,就需要計算機重新不斷的篩選,甚至進入無休止的循環(huán)狀態(tài),永遠無法完成抽題,這種代價是不必要的,為了解決上述情況,我們在系統(tǒng)設計的過程中允許約束條件間可以有一定的誤差,在總分值滿足滿分的條件下,它們之間可以在一定的范圍內(nèi)調(diào)節(jié)。

◘5.4.4 具體實現(xiàn)過程及相應代碼:

        窗口界面如下:
        組卷過程:在這里先給出窗體加載時的代碼,主要是完成一些數(shù)據(jù)庫的綁定:
        Private Sub Form_Load()
Image1.Picture = LoadPicture(App.Path & "\zj.gif")
          For i = 0 To 4
            Adodc1(i).ConnectionString= "Provider=Microsoft.Jet.OLEDB.4.0;Data
1



基于試題庫的自動組卷系統(tǒng)
Source=" + App.Path + "\datadb.mdb;"
Next
Adodc1(0).RecordSource = "選擇題"
Adodc1(1).RecordSource = "書面表達"
Adodc1(2).RecordSource = "短文改錯"
Adodc1(3).RecordSource = "閱讀理解"
Adodc1(4).RecordSource = "完型填空"
For i = 0 To 4
Adodc1(i).Refresh
Adodc1(i).Recordset.Filter = adFilterNone
Next
Data1.DatabaseName = App.Path & "\tempdb.mdb"
Data1.RecordSource = "temp"
Adodc2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\tempdb.mdb"
Adodc2.RecordSource = "temp"
Adodc2.Refresh
Data1.DatabaseName = App.Path & "\tempdb.mdb"
Data1.RecordSource = "temp"
End Sub
1. 首先用戶在界面上輸入各種約束條件:章節(jié)分布、題型分布、難度分布。檢查深入無誤以后,單擊確定按扭(否則可以按“重置”按扭進行重新設置)進行組卷。
2. 組卷!按_定”按扭的代碼如下:(之后將給出具體的介紹和解釋)
       Private Sub zujuan_Click()
Dim zj As Integer
aval(0) = 1  ,aval(1) = 20                 
aval(2) = 15,aval(3) = 8
aval(4) = 25
fstr = ""
         For j = 1 To z - 1
           szhj(j) = Chr(zhj(j) + 64)
           fstr = fstr & "章節(jié)分布  like '" & szhj(j) & "*'" & "or "
Next
fstr = fstr & "章節(jié)分布  like '" & Chr(zhj(j) + 64) & "*'"
L:
Data1.DatabaseName = App.Path & "\tempdb.mdb"
Data1.RecordSource = "temp"
1



基于試題庫的自動組卷系統(tǒng)
Data1.Refresh
Data1.Database.Execute ("DELETE * FROM temp")  ‘ 清空臨時庫
Data1.Database.Close                       Adodc2.Recordset.MoveFirst
While Adodc2.Recordset.EOF <> True
Adodc2.Recordset.delete
Adodc2.Recordset.MoveNext
Wend
lc = lc + 1                         ‘lc 用來記錄重復抽取的次數(shù)
If  lc > 5000 Then
msg = MsgBox("抽題失敗,請重試", vbOKCancel)
If msg = 1 Then
lc = 0
GoTo L
Else
End                           ‘用戶沒有選擇重試,則終止程序
End If
End If
etotalf = 0                            ‘etotalf 、mtotal、htotal分別表示
mtotalf = 0                             所有已抽取的題目中的容易、中
htotalf = 0                               等、較難的總分值
For s = 1 To z                                
zhjf(zhj(s)) = 0                      ‘zhjf() 數(shù)組表示所選擇的章節(jié)
Next
For i = 1 To 4
Adodc1(i).Recordset.Filter = fstr      ‘只打開所選擇章節(jié)內(nèi)的試題記錄
cnt(i) = Adodc1(i).Recordset.RecordCount
tl(i) = CInt(Text3(i).Text) \ aval(i)          ‘tl( )表示在最終的試卷中某
yushu = CInt(Text3(i).Text) Mod aval(i)                 題型的題量  
If yushu > aval(i) \ 2 Then
tl(i) = tl(i) + 1
End If
For t = 1 To tl(i)
Randomize
        vth(i, t) = Int(Rnd * cnt(i)) + 1 Adodc1(i).Recordset.MoveFirst
For n = 1 To vth(i, t) – 1             ‘將記錄移到隨機數(shù)所對應的
              Adodc1(i).Recordset.MoveNext                       記錄上
           Next
timu = Adodc1(i).Recordset("題目")
Adodc2.Recordset.AddNew
Adodc2.Recordset("題目") = timu        ‘將找到的記錄里的題目和答
  daan = Adodc1(i).Recordset("答案")  案字段寫進臨時庫文件中的題目
Adodc2.Recordset("答案") = daan            和答案字段中
Adodc2.Recordset.update
nandustr = Adodc1(i).Recordset("難度")
        echar = Mid(nandustr, 1, 1)                     ‘取得難度字段各位上的字符
        mchar = Mid(nandustr, 2, 1)
hchar = Mid(nandustr, 3, 1)
e(i, t) = CInt(echar)                            ‘類型轉換
m(i, t) = CInt(mchar)
h(i, t) = CInt(hchar)
zj = Asc(Adodc1(i).Recordset("章節(jié)分布")) – 64     ‘ 將章節(jié)中的A~J答應
zhjf(zj)=zhjf(zj)+Adodc1(i).Recordset(’’分值’’)      為1~10
Next
Next
                                                    ‘大題抽取完畢
For i = 1 To 4                                    
For t = 1 To tl(i)
etotalf = e(i, t) + etotalf
mtotalf = m(i, t) + mtotalf
htotalf = h(i, t) + htotalf
Next
Next
xetotalf = CInt(Text2(0).Text) – etotalf                   ‘ xetotal表示還需要
   xmtotalf = CInt(Text2(1).Text) – mtotalf              選擇的容易的題目的分值
xhtotalf = CInt(Text2(2).Text) – htotalf
For j = 1 To z
  zhjxtotalf(zhj(j)) = zhjtotalf(zhj(j)) - zhjf(zhj(j))         ‘判斷是否有章節(jié)
  If zhjxtotalf(zhj(j)) < 0 Then                  中的分值已經(jīng)超過了要求的值
    GoTo L
End If
Next
xtotalf = xetotalf + xmtotalf + xhtotalf
  If xtotalf < 0 Then
GoTo L
End If
Adodc1(0).Recordset.Filter = fstr                ‘開始選擇題的抽取
For j = 1 To z
  zhjfx(j) = 0
Next
cnt(0) = Adodc1(0).Recordset.RecordCount
tl(0) = xtotalf \ aval(0)
For t = 1 To tl(0)
Randomize
  vth(0, t) = Int(Rnd * cnt(0)) + 1
Adodc1(0).Recordset.MoveFirst
For n = 1 To vth(0, t) - 1
   Adodc1(0).Recordset.MoveNext
Next
timu = Adodc1(0).Recordset("題目")
Adodc2.Recordset.AddNew
Adodc2.Recordset("題目") = timu
nandustr = Adodc1(0).Recordset("難度")
echar = Mid(nandustr, 1, 1)
mchar = Mid(nandustr, 2, 1)
hchar = Mid(nandustr, 3, 1)
e(0, t) = CInt(echar)                                 
m(0, t) = CInt(mchar)
h(0, t) = CInt(hchar)
p = Asc(Adodc1(0).Recordset("章節(jié)分布")) - 64
zhjfx(p) = zhjfx(p) + Adodc1(0).Recordset("分值")
Next
xe = 0
xm = 0
xh = 0
For t = 1 To tl(0)
xe = e(0, t) + xe
xm = m(0, t) + xm
xh = h(0, t) + xh
Next
For q = 1 To z
If Abs(zhjxtotalf(zhj(q)) - zhjfx(zhj(q))) > 5 Then
b = True
Exit For
End If
Next
If Abs(xe - xetotalf) > 10 Or Abs(xm - xmtotalf) > 10 Or Abs(xhtotalf - xh) > 10
GoTo L
'Else
msgc = MsgBox("已經(jīng)成功完成抽題")
If msgc = 1 Then
editcmd.Enabled = True
End If
End If
End Sub
1



基于試題庫的自動組卷系統(tǒng)
部分解釋如下:其中的aval0~aval4 表示對應的選擇題、書面表達、短文改錯、閱讀理解、完型填空中每題的平均分數(shù)。數(shù)組zhj(1 to 10)由combo1(即章節(jié)選擇列表框)的代碼中定義zhj(z + 1) = Combo1.ListIndex + 1,z =z+1;用來表示所選中的章節(jié),取值范圍是1~10 例如zhj(2)=4 表示選擇的第2種章節(jié)類型是第4章。fstr 用來做過濾變量,即若用戶選擇了第一、三、八章3個章節(jié)的時候,在后面的組卷過程中,只是從這三章的試題中抽取試題,而不是從整個數(shù)據(jù)表中搜索,大題即完型填空、書面表達、短文改錯、閱讀理解的抽取試題方法相同:text3(i)中得到的數(shù)值為對應的題型I的試題總分值。tl(i)表示為了滿足text3(i)的條件需要抽取的題量。利用隨機函數(shù)vth(i, t) = Int(Rnd * cnt(i)) + 1 依次從試題庫中抽取試題,cnt(i)是所選中章節(jié)中的題型I的總題量,vth(I,t)表示題型I中 第t題在數(shù)據(jù)表(經(jīng)過filter以后的表)中的位置,然后數(shù)據(jù)表中的記錄從第一條到最后一條之間掃描,找到對應的記錄vth(I,t)的位置,利用recordset(“題目”)和recordset(“答案”)的方法把所找到的記錄中的題目和答案字段復制到臨時庫文件temp中(它由程序中的adodc2控件綁定)。然后把記錄的其他一些屬性保存起來,后面將用它們來判斷約束條件的成立與否。具體提取的屬性值如下:難度----在數(shù)據(jù)庫中我們已經(jīng)解釋過“難度”字段的含義,現(xiàn)在就用三個變量來分別提取該字段中的三個位的值,e(i, t) = CInt(echar)表示所選取的題型I的第t題的難度屬性中對應的容易的分值,m(i, t) 、h(i, t)則依次答應中等和較難的分值;章節(jié)----因為在數(shù)據(jù)庫中利用A~J表示章節(jié),所以在程序中需要利用Asc(Adodc1(i).Recordset("章節(jié)分布")) – 64 把屬性中的A~J轉化成相對應的1~10, 使之與zhjf(1 to10)中下標匹配,zhjf()表示已抽取的題目中某章節(jié)占的總分數(shù),例如zhjf(2)=30,表示第2章已抽取的總分數(shù)為30分。當大題一次遍歷抽取之后,把所有已抽取的題目中的容易、中等、較難的分值做累加,用xetotlaf、metotalf、htotalf表示。xetotalf=text2(0)-etotalf 、xmtotalf=text2(1)-mtotalf、xhtotalf=text2(2)-htotalf得出需要從選擇題題抽取的題目難度分布。zhjtotalf(1to10 )表示的是在界面中輸入的對各章節(jié)分布的要求,用代碼中的zhjtotalf(zhj(j)) - zhjf(zhj(j)) 就可以求得在選擇題中可以在各章節(jié)中抽取的分數(shù),用zhjxtotalf()表示,若數(shù)組zhjxtotalf()中的某一個值小于零,則重新開始大題的抽題。因為這意味著在抽取大題的過程中,某個章節(jié)的比重已經(jīng)超出了預定的值。最后開始選擇題的抽取。選擇題的隨機抽取過程與大題一致,在此不再解釋,主要介紹一下涉及最后一些約束條件判斷的變量。zhjfx() 表示實際抽取出來的選擇題中各章節(jié)的分數(shù),Abs(zhjxtotalf(zhj(q)) - zhjfx(zhj(q)))是否大于5作為判斷本次隨機抽取過程有效性的標準之一,若大于5,則視抽題失敗,重新開始新一輪的選擇;若小于則再判斷其他條件是否滿足。用xe、xm、xh表示實際抽取出來的選擇題中各難度的值的分布。用Abs(xe - xetotalf) > 5來判斷實際抽取的選擇題與要求的在容易題上的誤差,類似有Abs(xm - xmtotalf) > 5 、Abs(xhtotalf –xhtotalf)的定義。如果以上三個限制條件中有一個不滿足,則視為抽題失敗,重新開始隨機抽題過程,若總的循環(huán)次數(shù)超過了某個值,如5000,則視無法按預定義要求組卷,要求退出系統(tǒng)重新設置參數(shù)。在又一輪的循環(huán)之前,有一項需要做的工作是把temp數(shù)據(jù)表中的數(shù)據(jù)清空,因為這都是些中間數(shù)據(jù),它們已經(jīng)被判定為不滿足條件的,繼續(xù)存儲在表中,會給后面的組卷工作帶來錯誤,因此要刪除。當出現(xiàn)提示“完成抽題”的提示后,單擊確定,界面上的“編輯試卷”按扭置為可編輯,進入組卷的最后一個環(huán)節(jié)。
◘5.4.5 試卷編輯。 將臨時庫文件中的試題記錄逐條的讀入word文檔中。具體操作是:先建立一個word OLE自動化對象 ,利用其的insert方法將記錄從數(shù)據(jù)表中讀取出來插入到文檔中。在此過程中,通過判斷tl()的值在適當?shù)臅r候插入題型的標題和題號,如在選擇題試題插入完之后應該插入一行文本“完型填空”。用戶可以對其進行試題做一些調(diào)整以及打印、存檔。實現(xiàn)代碼如下:
  Private Sub editcmd_Click()
For c = 0 To 4
ttl = ttl + tl(c)
Next
bh = 1
Dim objWord As Object
Set objWord = CreateObject("word.basic")
objWord.appshow
objWord.filenew
Adodc2.Recordset.MoveLast
objWord.Insert "第一大題 選擇題" & Chr(13)
For j = 1 To ttl
If  j <= tl(0) Then
objWord.Insert "(" & bh & ")" & " " & Adodc2.Recordset("題目") & Chr(13)
Else
          objWord.Insert Adodc2.Recordset("題目") & Chr(13)
    End If
If  j = tl(0) + tl(4) Then objWord.Insert "第三大題 閱讀理解" & Chr(13)
If  j = tl(0) + tl(4) + tl(3) Then objWord.Insert "第四大題 短文改錯" & Chr(13)
If  j = tl(0) + tl(1) + tl(3) + tl(2) Then objWord.Insert "第五大題 書面表達" & Chr(13)
Adodc2.Recordset.MovePrevious
bh = bh + 1
Next
End Sub

結束語:  自動組卷并不是一個新的領域,但它仍處在需要不斷的完善的階段之中。由于各個學科的不同,基于試題庫的自動組卷系統(tǒng)在數(shù)據(jù)庫設計等方面會有些許的差異,本系統(tǒng)的實現(xiàn)實質(zhì)上是拋張引玉。本文介紹和完成了一個具體的組卷系統(tǒng)的開發(fā),它具有一定的實際應用價值,然而由于在時間、能力、技術等諸方面的不足,在算法優(yōu)化和庫結構的設計上還有一些有待于改進的地方,還有許多功能有待于日后來增強。這是本人第一次真正的做軟件開發(fā),在一次次的發(fā)現(xiàn)問題、解決問題的過程中,學到了許多專業(yè)知識以及處理事務的方法,為以后的學習和工作積累了豐富的經(jīng)驗,這是本人認為比這個完成軟件更具有意義價值的。


回復

使用道具 舉報

ID:410407 發(fā)表于 2018-10-16 13:20 | 顯示全部樓層
正好,學習學習!
回復

使用道具 舉報

ID:419274 發(fā)表于 2018-11-1 18:12 | 顯示全部樓層
密碼多少
回復

使用道具 舉報

ID:518311 發(fā)表于 2019-12-14 18:19 | 顯示全部樓層
下載來學習學習,謝謝
回復

使用道具 舉報

5#
無效樓層,該帖已經(jīng)被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
国产一区二区三区综合| 色av性av丰满av| 最近免费中文字幕大全免费版视频| 永久免费黄色软件| 免费观看v片在线观看| 亚洲欧美韩国| 在线看片成人| 亚洲欧美在线aaa| 亚洲色在线视频| 5g国产欧美日韩视频| 国产原创精品在线| 国产特黄大片aaaa毛片| 丝袜脚交免费网站xx| 欧美高清另类hdvideosexjaⅴ| 欧洲杯半决赛直播| 91麻豆免费看| 日韩成人在线网站| 99久久免费国| 亚洲最大视频网| 精品人妻伦一二三区久久 | 日韩电影网在线| 51精品国产人成在线观看| 欧美日韩精品区别| 99久久精品国产色欲| 日韩男人天堂| 亚洲综合影院| 粉嫩久久99精品久久久久久夜| 欧美日本高清视频在线观看| 国产又爽又黄的激情精品视频 | 免费看黄色91| 宅男在线国产精品| 99九九视频| 右手影院亚洲欧美| 国产浴室偷窥在线播放| 狠狠操一区二区三区| 日日夜夜精品免费视频| 6080午夜不卡| 麻豆av一区二区三区| 久久久久无码精品国产sm果冻| 欧美色图自拍| 成人动漫一区| 国产乱子伦视频一区二区三区| 日韩欧美成人激情| 欧美人xxxxx| 国产精品视频一区二区三| 成年人深夜福利| 99精品女人在线观看免费视频| 懂色av中文一区二区三区| 亚洲美女精品久久| 久久av综合网| 亚洲图片中文字幕| jizz在线观看视频| 欧美精品一级| 欧美午夜精品理论片a级按摩| 欧美中文字幕一区二区三区| 国产精品丝袜久久久久久不卡| 熟妇女人妻丰满少妇中文字幕| 少妇人妻精品一区二区三区| 色呦呦在线看| 精品一区精品二区高清| 亚洲美女性视频| 中文字幕无码精品亚洲资源网久久| 亚洲婷婷久久综合| 91亚洲欧美| 玖玖玖国产精品| 亚洲精品国产精品乱码不99按摩| 亚洲AV无码成人精品一区| 中文字幕精品三级久久久| 伪装者在线观看完整版免费| 99久久久久国产精品| 在线精品视频一区二区三四| 激情小说综合网| 国产一级aa大片毛片| 中文字幕中文字幕在线中文字幕三区 | 青青草原一区二区| 天堂va欧美va亚洲va老司机| 国产又粗又长| 伊人久久影院| 夜夜精品浪潮av一区二区三区| 成人国产精品av| 999久久久国产| 国产九色porn网址| 午夜国产一区二区| 国产精品无码永久免费不卡| 国产福利视频在线播放| 国产乱叫456在线| 超碰在线观看免费| 九一免费在线观看| av老司机久久| 麻豆精品国产| 欧美日韩国产一区二区三区地区| 国产v片免费观看| 96精品视频| 午夜视频精品| 久久九九免费视频| 在线小视频你懂的| 大片免费播放在线视频| 99精品视频一区| 久久色在线观看| 欧美日韩一区免费| 人妻无码一区二区三区四区| 国产日韩欧美精品一区二区三区| 日本精品黄色| 伊是香蕉大人久久| 人妻在线日韩免费视频| 色视频在线观看| 成人国产精品免费| 亚洲午夜精品在线| 老司机午夜免费福利视频| 欧美色图片区| 欧美国产91| 日韩有码在线观看| 亚洲天堂精品一区| 91三级在线| 亚洲色图视频免费播放| 在线精品亚洲一区二区| 久久精品国产麻豆| 午夜视频精品| 欧美成人合集magnet| 免费精品在线视频| ririsao久久精品一区| 亚洲一区二区在线观看视频 | 欧美女优在线观看| 99精品偷自拍| 色噜噜一区二区| 一二三四在线观看视频韩国| 亚洲情侣在线| 欧美激情在线一区| 日本特黄特色aaa大片免费| 日韩精品99| 欧美男人的天堂一二区| 中文字幕人妻无码系列第三区| 亚洲第一成年免费网站| 91丨porny丨国产入口| 日本福利一区二区三区| 欧美毛片又粗又长又大| 一区二区高清| 国产精品色婷婷视频| 国产精品国产三级国产aⅴ| 亚洲人成网www| 亚洲人成网站在线播| 福利视频第一页| 欧美大胆性生话| 欧美久久久久免费| 精品久久久久一区二区| av网站在线播放| 亚洲一区二区四区蜜桃| 精品国产免费av| 中文字字幕在线中文乱码电影| 欧美—级在线免费片| 日本a级片在线观看| 天天色天天草| 波多野结衣精品在线| 日本一区二区三区免费看| 国产激情网址| 日本在线播放一区二区三区| 天堂中文av| 麻豆视频观看网址久久| 成人国产在线视频| 亚洲欧美日韩综合在线| 国产精品hd| 国产精品电影在线观看| 国产极品久久久| 天天插综合网| 国产高清在线不卡| 亚洲欧美另类日韩| 伊人成年综合电影网| 国产有码在线一区二区视频| 影音先锋国产资源站| 性娇小13――14欧美| 亚洲综合中文字幕在线观看| 狂野欧美激情性xxxx| 美女精品一区二区| 欧美国产二区| h视频在线观看免费完整版| www.日本不卡| 日韩极品视频在线观看| 在线中文视频| 午夜精品福利视频网站| 日韩大尺度视频| 蜜桃在线视频| 日韩av在线免播放器| 国产无码精品一区二区| 群体交乱之放荡娇妻一区二区| 欧美精品www| 99久久精品免费看国产交换| 欧美日韩亚洲一区三区| 亚洲自拍偷拍在线| 在线免费观看电影网站入口| av不卡免费在线观看| 成人免费视频91| 黄色的视频在线免费观看| 一本到三区不卡视频| 黄色在线观看av| 欧美日韩卡一| 久久韩国免费视频| 99er热精品视频| 亚洲一区国产| 日韩一本精品| 一级免费视频| 精品日韩中文字幕| 午夜在线观看一区| 试看120秒一区二区三区| 伦理中文字幕亚洲| 隣の若妻さん波多野结衣| 视频一区二区三区在线| 天堂一区二区三区| 一线天粉嫩在线播放| 色综合久久天天| sm捆绑调教视频| 久9久9色综合| 91沈先生在线观看| www.青青草| 亚洲精品乱码久久久久久 | 天天操天天操天天干| 精品一区二区在线视频| 日韩精品久久一区二区| 天天干天天爽天天操| 日本一区中文字幕| 日韩精品在线观看av| 欧美jizz18性欧美| 日韩av网站在线| 一女二男一黄一片| 日本免费在线视频不卡一不卡二| 日本高清视频免费在线观看| 欧美性videos| 日韩av网址在线观看| 99视频免费看| 国产精品一区二区在线观看网站| a在线视频观看| jizz一区二区三区| 日韩在线免费观看视频| 日韩在线观看视频一区| 国内精品伊人久久久久av一坑| 老太脱裤让老头玩ⅹxxxx| 天堂av最新在线| 在线观看免费高清视频97| 中文字幕第99页| 青青草伊人久久| 精品国产免费av| 忘忧草在线www成人影院| 欧美黄色片在线观看| 无国产精品白浆是免费| 久久精品一级爱片| 偷偷色噜狠狠狠狠的777米奇| 精品午夜视频| 97在线观看免费高清| 在线电影中文字幕| 成人美女视频在线观看| 成熟了的熟妇毛茸茸| 人人澡人人添人人爽一区二区| 亚洲国产中文字幕在线观看| 青青草成人免费| 99久久精品国产亚洲精品 | 日韩在线一卡二卡| 久久av中文| 好吊色欧美一区二区三区视频| 亚洲综合色视频在线观看| 欧美成人高清电影在线| 国产福利第一页| 91丝袜高跟美女视频| 久久久国产精品无码| 久草在线成人| 欧洲亚洲一区二区三区四区五区| 国产福利片在线| 国产一区二区三区在线| 黄网站在线观看永久免费| 国产精品精品国产色婷婷| 亚洲黄色网址大全| 欧美一区二区| 黄色一级大片免费| 欧美7777| 国产精品视频99| h短视频大全在线观看| 精品日韩一区二区三区免费视频| 成 人 免费 黄 色| 国产午夜精品在线观看| 亚洲欧美va天堂人熟伦| 亚洲综合激情在线| 国产欧美精品aaaaaa片| 欧美xxx性| 亚洲aⅴ男人的天堂在线观看 | 色先锋久久影院av| 蜜桃麻豆91| 日韩av毛片| 9.1国产丝袜在线观看| 先锋影音中文字幕| 一二三四社区欧美黄| 欧美日韩综合在线观看| 国产一区二区三区久久久| 成人在线观看一区二区| 日韩欧美中文| 老司机激情视频| 四虎视频在线精品免费网址| 97人人干人人| 国产日产一区二区三区| 韩国福利视频一区| xxxx影院| 亚洲欧美日韩区| 欧美婷婷久久| av免费在线免费观看| 韩剧1988在线观看免费完整版| 色成人亚洲网| 亚洲精品国精品久久99热| 欧美bbbbxxxx| 色先锋aa成人| 超碰在线观看99| 一区二区三区久久| 波多野结衣视频在线看| 久久人人爽人人爽| 无码人妻精品一区二区三区夜夜嗨| 日韩在线观看一区二区| 欧美69精品久久久久久不卡| 亚洲成人av| 一级在线免费视频| 色综合狠狠操| 人妻无码视频一区二区三区| 国产主播福利在线| 日韩中文字幕精品| av最新网址| 国产一区二区成人| jizzjizz在线| 日韩乱码在线视频| 妞干网福利视频| 亚洲成人网久久久| 色一色在线观看视频网站| 日韩免费观看高清完整版| 久久99国产精品久久99小说| 欧美日韩高清影院| 在线播放性xxx欧美| 8x福利精品第一导航| 日本亚洲欧美美色| 欧美美女喷水视频| 日韩综合另类| 欧美精品免费视频| 免费精品国产自产拍在| 欧美日韩精品是欧美日韩精品| 天堂网www在线中文天堂| 欧美午夜寂寞影院| 欧美午夜性春猛xxxx| 欧美日韩亚洲另类| 黑粗硬大欧美视频| 亚洲精品在线观看视频| 九九热这里只有| 亚洲全黄一级网站| 成人永久免费网站| 九色91av视频| 日本国产在线| 日韩美女主播视频| av免费网站在线观看| 97久久人人超碰caoprom欧美 | 麻豆成人精品| 亚洲精品成人无码熟妇在线| 免费国产亚洲视频| 久久精品国产亚洲AV成人婷婷| 国产电影一区在线| 国产一级视频在线| 国产精品丝袜在线| 国产喷水吹潮视频www| 激情成人中文字幕| 日本久久天堂| 欧美精品一区二区在线播放| 先锋影音av资源站| 久久精品国产91精品亚洲| 亚洲男人资源| 国产精品人成电影在线观看| 欧美色图天堂| 欧美动漫一区二区| 91精品久久久久久综合五月天| 欧美一级免费播放| 久久久久美女| 国产高清成人久久| 国产另类ts人妖一区二区| 精品视频在线观看免费| 国产精品私房写真福利视频| 国产夫绿帽单男3p精品视频| 欧美视频在线一区二区三区 | 91亚洲永久精品| www毛片com| 亚洲风情在线资源站| 亚洲成人国产综合| 日韩成人性视频| 成r视频免费观看在线播放| 欧美一区二区三区四区在线| 色呦呦在线播放| 欧美日韩一区二区视频在线| 欧美人成在线观看ccc36| 嫩草av久久伊人妇女超级a| 伊人久久综合| 91久久久久久久久久久久久久| 久久久久久毛片| 国产夫绿帽单男3p精品视频| 91精品国产乱| 97秋霞电影网| 日本精品va在线观看| 国内精彩免费自拍视频在线观看网址| 在线日韩av永久免费观看| 日韩成人激情| 蜜桃精品一区二区| 91蜜桃在线观看|