考試系統(tǒng)課程設計報告_第1頁
考試系統(tǒng)課程設計報告_第2頁
考試系統(tǒng)課程設計報告_第3頁
考試系統(tǒng)課程設計報告_第4頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、visual basic課 程 設 計 報 告所屬課程名稱:visual basic程序設計課程設計題目:考試系統(tǒng) 課程設計難度:四星課程設計時間:2012.2.27 3.23學 號:姓 名: 南京理工大學機械工程學院二一二年三月一、 程序功能 (1)、運行程序時,首先顯示主界面。單擊“單選題”、“多選題”、“判斷題”、“填空題”四個按鈕之一,會出現不同題型的窗口。 (2)、單選題、多選題、判斷題和填空題窗體上有前一題、下一題、查看成績、退出四個按鈕。用戶看完題后作答,可在任意時刻點擊查看成績按鈕,會出現對話框,顯示此時答對題數。按退出按鈕,返回主菜單。窗體上會顯示已答題數和總題數。 (3)、

2、單擊前一題、后一題會切換題目,若已位于第一題和最后一題,會彈出對話框,給出提示信息。二、 課程設計的詳細設計 功能描述及設計思路 本程序實現以下五部分功能:1、讀取文件,獲得題目;2、記錄正確答案;3、記錄用戶答案;4、比對答案;5、得出成績。分別實現各部分功能即可完成整個程序。在窗體load事件中獲得題目和答案,在后續(xù)操作中記錄用戶答案,單擊查詢按鈕后,比對答案,獲得成績。不同按鈕執(zhí)行不同過程,實現不同功能。三、 程序調試過程 【困難1】讀取數據庫文件及逐條顯示在窗體上。 【解決辦法】通過查閱課本,編寫課本給的樣例程序,學習用opendatabase語句打開數據庫,并用movenext和mo

3、veprevious方法移動記錄,逐條顯示題目和答案。 【困難2】保存用戶答案。 【解決辦法】 通過向老師請教,用數組保存用戶答案。通過多次調試,確定數組記錄的位置,使之正確保存用戶答案。 【困難3】比對答案和顯示成績。 【解決辦法】 查閱上學期課本,復習數組的用法。在各窗體的load事件中,用數組保存正確答案,單擊查看成績按鈕,會比較用戶答案和正確答案,若正確則成績加1,得出成績。四、 更上一層樓樣例程序在運行時,若退出該題型,答案會被清空。本程序中,用戶可在做當前題未做完時退出去做其他題型,其答案會被保留,用戶可在任意時刻后回到該題型繼續(xù)做。五、 課程設計總結 (1)、程序不夠簡潔。由于事

4、先沒有進行細致規(guī)劃,導致在編寫時沒有全局概念,可以重復使用的變量卻多次定義,致使程序變量有點亂。 (2)、沒有使用過程。單純在事件中編寫事件,不簡潔。 (3)、功能上,不能在主菜單中反饋本次測驗總成績。六、 源程序代碼(以單選題為例)(1)打開文件,獲得題目set tiku = opendatabase(app.path & tiku.mdb, false, true, ;pwd=tiku) 打開文件,加載到內存 set recset = tiku.openrecordset(xz3)dim a(0 to 2) as string n = n + 1 x = recset!question a

5、(0) = recset!ans1 a(1) = recset!ans2 a(2) = recset!ans3 label1.caption = x option1(0).caption = (a) & a(0) option1(1).caption = (b) & a(1) option1(2).caption = (c) & a(2) label3.caption = 第 & n & 題 label4.caption = (已做 & m & 題,共11題)(2)、記錄用戶答案 if option1(0).value then ans1(n) = 100 if option1(1).valu

6、e then ans1(n) = 010 if option1(2).value then ans1(n) = 001(3)、比對答案獲得成績dim p as integer do while p = 10 比對答案 if tans1(p + 1) = ans1(p + 1) then socer = socer + 1 p = p + 1 loop msgbox 共11題答對 & socer & 題, 64, 成績查詢 socer = 0 重置成績(4)、顯示已做題答案if ans1(n) = then option1(0).value = false 此題未做 option1(1).val

7、ue = false option1(2).value = false else if ans1(n) = 100 then option1(0).value = true 顯示前一題答案 if ans1(n) = 010 then option1(1).value = true if ans1(n) = 001 then option1(2).value = true end if二、心得體會 (1)、紙上得來終覺淺。真正掌握知識要在實際中多運用,多操練。只有會運用學會的理論知識解決實際問題才算真正掌握。 (2)、困難會有的,但只要不灰心喪氣,敢于面對,敢于解決,遇到問題不能急躁,要分析問題解決問題。多想辦法就能克服困難,取得進步。 (3)、一個大的任務要會分割成

溫馨提示

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

評論

0/150

提交評論