国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

借助.NET平臺實現(xiàn)無紙化練習(xí)、考試

2016-05-14 08:51林萬泉
學(xué)周刊·中旬刊 2016年9期
關(guān)鍵詞:控件數(shù)據(jù)庫算法

林萬泉

摘 要:現(xiàn)在學(xué)校的電腦室基本上都組成了局域網(wǎng),通過網(wǎng)絡(luò)平臺自己建立一個練習(xí)與考試的平臺,既方便于學(xué)生學(xué)習(xí),也提高了學(xué)生對信息技術(shù)這門課的興趣。本文將詳細(xì)談?wù)勅绾谓柚鶱ET平臺平臺實現(xiàn)學(xué)生的無紙化練習(xí)和考試。

關(guān)鍵詞:算法;NET平臺;數(shù)據(jù)庫;Visual Basic;控件

中圖分類號:G63 文獻(xiàn)標(biāo)識碼:A 文章編號:1673-9132(2016)26-0237-02

DOI:10.16657/j.cnki.issn1673-9132.2016.26.154

現(xiàn)在學(xué)校的電腦室基本上都組成了局域網(wǎng),通過局域網(wǎng)可以讓學(xué)生平時練習(xí)和考試中實現(xiàn)自動化、無紙化。我校電腦室通過.NET平臺組成了一個簡單的無紙化練習(xí)、考試程序,現(xiàn)將具體流程表述出來,以期給其他學(xué)校提供一些借鑒。

一、 算法思路

我自行編寫的這個程序的設(shè)計思路是用B/S模式來實現(xiàn)的,首先把學(xué)生的習(xí)題放在數(shù)據(jù)庫中,每位學(xué)生練習(xí)或測試時使用隨機(jī)抽題方式。學(xué)生題庫的錄入與取出均用HTML來表示,因為HTML可以在B/S模式中實現(xiàn)圖文排版等富媒體形式。

在這程序中,數(shù)據(jù)庫是中心位置,是我們存放題目、查看學(xué)生成績的場所。數(shù)據(jù)庫表結(jié)構(gòu)如下圖:

下面我僅以選擇題為例進(jìn)行分析。

表km有兩個字段:kmid與km分別用來存放科目序號與科目名稱。

表kstable為選擇題,ksid為題目序號,kmid為該題目所對應(yīng)學(xué)科,kstm為題目內(nèi)容,sela-d為A、B、C、D四個選擇內(nèi)容,answer為正確答案。如下圖所示:

而這程序中算法核心的是抽題的算法,我的算法是這樣實現(xiàn)的(以選擇題20題為例):

1.如果庫中題目不多于20題,則全部抽取。

2.如果庫中題目多于20題,則先算出庫中該科題目的記錄數(shù),然后生成從1到記錄數(shù)的隨機(jī)20個數(shù)值,分配給20個數(shù)組。其算法表述如下:

先建立一個N(數(shù)據(jù)庫記錄個數(shù))的數(shù)組,然后從0—(N-1)依次賦值,最后在數(shù)組里選,每選出一個,該數(shù)組后的依次前移一位,最后再在N-M(循環(huán)次數(shù))個里選,這樣循環(huán),直到選到你滿意的個數(shù)。

依據(jù)這一算法思想,我列其程序代碼如下:

如何讓錄入的數(shù)據(jù)以HTML格式保存呢?而Visual Studio 2008帶的Textbox控件顯然沒有所見即所得功能,在這我選用一款免費的.Net Framework控件——Free Textbox,它的下載網(wǎng)址:http://www.freetextbox.com。通過Free Textbox我們可以象用Front Page一樣輸入題庫。而對于Free Textbox控件輸入的內(nèi)容的獲取與Textbox控件一樣,用text屬性獲取或給予。例如:

Dim kmstring as string

kmstring = freetextbox1.text

二、程序編寫

在微軟操作系統(tǒng)下,沒有什么比Visual Studio .net更適合于。Net編程的了,我使用Visual Basic 2008編寫。

1.界面編寫:

在Visual Studio 2008中綁定數(shù)據(jù)的控件中常用的有三種:GridView,DataList,Repeater。這三種數(shù)據(jù)控件各有優(yōu)缺點。GridView功能強(qiáng)大,數(shù)據(jù)綁定簡單但自主性差,主要用于數(shù)據(jù)表格的顯示、編輯、刪除等操作。DataList用來混合顯示一些參雜的數(shù)據(jù),如產(chǎn)品的圖文混合顯示等。Repeater功能最弱,但自主性很強(qiáng),顯示的形式最為靈活,只要有數(shù)據(jù)集你想顯示成什么樣就顯示成什么樣,所以本例選用Repeater控件。由于題目是從數(shù)據(jù)庫中取出,而且題數(shù)不確定,因而我選用在代碼中手動添加控件及用<% %>數(shù)據(jù)綁定的方法來實現(xiàn)。

代碼如下:

題目:<%#DataBinder.Eval(Container.DataItem, "kstm")%>

A:<%#DataBinder.Eval(Container.DataItem, "sela")%>

B:<%#DataBinder.Eval(Container.DataItem, "selb")%>

C:<%#DataBinder.Eval(Container.DataItem, "selc")%>

D:<%#DataBinder.Eval(Container.DataItem, "seld")%>

其界面如下圖:

2.編寫代碼:

分析好了需求,設(shè)計好算法與流程圖,又用編好ASP.NET界面,接下來就是編寫程序的代碼了,這樣才能讓這個WEB Form成為一個真正意義上的程序。程序最關(guān)鍵是在N個數(shù)中隨機(jī)抽取M個不重復(fù)的數(shù),這一算法在前面已給出算法,這里不重復(fù)講述了,下面就是如何把題目從出數(shù)據(jù)庫出取出并顯示出來了。

代碼如下:

在教學(xué)中,通過.NET平臺編寫一個練習(xí)、考試用的軟件平臺,既可以讓學(xué)生多一個好的學(xué)習(xí)平臺,又在教學(xué)中加深了學(xué)生對這門課的學(xué)習(xí)興趣。當(dāng)然,本人在文中還有許多不足之處,還請廣大同仁給予指正。

[責(zé)任編輯 趙景霞]

猜你喜歡
控件數(shù)據(jù)庫算法
基于MapReduce的改進(jìn)Eclat算法
Travellng thg World Full—time for Rree
進(jìn)位加法的兩種算法
一種改進(jìn)的整周模糊度去相關(guān)算法
ASP.NET服務(wù)器端驗證控件的使用
Spreadsheet控件在Delphi數(shù)據(jù)庫系統(tǒng)中的編程與應(yīng)用
阿城市| 环江| 凤山县| 泸西县| 周至县| 乳山市| 江阴市| 油尖旺区| 遂宁市| 安国市| 红河县| 青浦区| 周口市| 莎车县| 长治市| 永新县| 白玉县| 广西| 成武县| 孟州市| 四川省| 永福县| 高密市| 武隆县| 兰考县| 五原县| 娄烦县| 紫云| 岳阳市| 抚远县| 海南省| 辽中县| 定结县| 顺平县| 大方县| 芦溪县| 安西县| 霍林郭勒市| 盐边县| 犍为县| 柳江县|