2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  論文(設(shè)計(jì))題目 Java語(yǔ)言考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p>  The Design and Realization of Examination System for Java </p><p>  作 者 </p><p>  二級(jí)學(xué)院

2、、專業(yè) 信息工程學(xué)院計(jì)算機(jī)科學(xué)與技術(shù) </p><p>  班 級(jí) </p><p>  指導(dǎo)教師(職稱) </p><p>  論 文 字 數(shù) </p><p

3、>  論文完成時(shí)間 </p><p><b>  杭州師范學(xué)院教務(wù)</b></p><p><b>  目錄</b></p><p><b>  摘要1</b></p><p>  Abstract2</p>&l

4、t;p><b>  第一章 引言3</b></p><p>  1.1 計(jì)算機(jī)等級(jí)考試(二級(jí))3</p><p>  1.2 考試系統(tǒng)采用的實(shí)現(xiàn)模式3</p><p>  第二章 考試系統(tǒng)采用的技術(shù)和運(yùn)行平臺(tái)4</p><p>  2.1 Visual Basic .NET4</p>&

5、lt;p>  2.2 SQL Server 20005</p><p>  2.3 Web服務(wù)5</p><p>  2.3.1 Web服務(wù)的概念5</p><p>  2.3.2 Web服務(wù)的優(yōu)點(diǎn)6</p><p>  2.4 .NET對(duì)Web服務(wù)的支持6</p><p>  2.5 考試系統(tǒng)的運(yùn)行平

6、臺(tái)6</p><p>  2.5.1 硬件平臺(tái)6</p><p>  2.5.2 軟件平臺(tái)6</p><p>  第三章 考試系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)、構(gòu)成模塊及特點(diǎn)7</p><p>  3.1 考試系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)7</p><p>  3.2 考試系統(tǒng)的構(gòu)成模塊9</p><p> 

7、 3.2.1 題庫(kù)管理模塊10</p><p>  3.2.2身份驗(yàn)證模塊10</p><p>  3.2.3各類試題模塊10</p><p>  3.2.4監(jiān)考管理模塊11</p><p>  3.2.5閱卷模塊11</p><p>  3.2.6缺考統(tǒng)計(jì)模塊11</p><p>

8、  3.3 考試系統(tǒng)的特點(diǎn)11</p><p>  第四章 考試系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)12</p><p>  4.1 數(shù)據(jù)庫(kù)操作12</p><p>  4.2 打亂序號(hào)算法15</p><p>  4.3 文件的壓縮與解壓縮15</p><p>  第五章 總結(jié)與展望17</p>&l

9、t;p><b>  參考文獻(xiàn)19</b></p><p><b>  附錄A:19</b></p><p>  系統(tǒng)使用說明:19</p><p><b>  摘要:</b></p><p>  隨著信息技術(shù)的廣泛使用,各類計(jì)算機(jī)考試也應(yīng)運(yùn)而生,這類考試多為上機(jī)考試

10、,因此,考試的環(huán)境,即考試系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)非常重要。在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面的今天,采用網(wǎng)絡(luò)考試是一個(gè)很重要的方向。目前,網(wǎng)絡(luò)考試系統(tǒng)的實(shí)現(xiàn),可以采用傳統(tǒng)的客戶機(jī)/服務(wù)器模式,也可以采用目前流行的瀏覽器/服務(wù)器模式,即基于Web的方式。本系統(tǒng)采用的后一種模式,因此,本文簡(jiǎn)單的介紹了該模式的實(shí)現(xiàn)方法。同時(shí),還介紹了等級(jí)考試的一些相關(guān)信息;語(yǔ)言類考試系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)的相關(guān)技術(shù);該系統(tǒng)的組成模塊、數(shù)據(jù)庫(kù)設(shè)計(jì)以及運(yùn)行平臺(tái)。還介紹了該考試

11、系統(tǒng)的特點(diǎn)和實(shí)現(xiàn)的關(guān)鍵技術(shù)。最后,指出了該考試存在的一些不足,以及對(duì)實(shí)現(xiàn)該考試系統(tǒng)的主要技術(shù)——Web服務(wù)技術(shù)在考試系統(tǒng)中的應(yīng)用進(jìn)行了展望。</p><p><b>  關(guān)鍵詞:</b></p><p>  考試系統(tǒng) Web服務(wù) 數(shù)據(jù)庫(kù) Visual Basic .NET</p><p><b>  Abstract</b

12、></p><p>  With the mass use of the information technology, all kinds of computer examinations arise. And people exam usually by operate the computer, so, the environment of the examination, namely have a

13、n examination the design and realizing of system, is very important. Today, when the network technology permeates each aspect of social life gradually, so choose the network to have an examination is a very important dir

14、ection. At present, to realize the network examination system, can adopt the traditiona</p><p><b>  Keywords:</b></p><p>  Examination System Web Services Database Visual Basic .N

15、ET</p><p><b>  第一章 引言</b></p><p>  當(dāng)今世界,社會(huì)和經(jīng)濟(jì)的發(fā)展對(duì)信息資源、信息技術(shù)和信息產(chǎn)業(yè)的依賴程度越來越大,信息化是世界各國(guó)發(fā)展經(jīng)濟(jì)的共同選擇。我國(guó)也已把加快國(guó)家經(jīng)濟(jì)信息化提到重要日程。西方國(guó)家在普及計(jì)算機(jī)知識(shí),全方位、多層次地培養(yǎng)各行各業(yè)計(jì)算機(jī)應(yīng)用人員方面,有許多經(jīng)驗(yàn)值得我們借鑒,其中一條就是開展全國(guó)范圍的定期的計(jì)算機(jī)各

16、類等級(jí)考試。為了適應(yīng)我國(guó)必須盡快實(shí)現(xiàn)國(guó)家經(jīng)濟(jì)信息化,提高全社會(huì)的計(jì)算機(jī)應(yīng)用水平,使我國(guó)的計(jì)算機(jī)應(yīng)用與國(guó)際社會(huì)接軌的形勢(shì)的要求,在我國(guó)也已經(jīng)設(shè)立或引進(jìn)了各類計(jì)算機(jī)考試。國(guó)家教委組織的"全國(guó)計(jì)算機(jī)等級(jí)考試"就是一種。等級(jí)考試除了理論考以外,很重要的一部分是上機(jī)操作,也就是在指定的時(shí)間里完成指定的計(jì)算機(jī)基本操作,按給定要求編寫、調(diào)試程序。上機(jī)考試與傳統(tǒng)的考試相比,它最大限度排除了人為因素的作用,保證了考試的客觀性;考生在考

17、試之后,一般就能夠得到成績(jī),使考試具有實(shí)時(shí)性;而且通過計(jì)算機(jī)改卷,標(biāo)準(zhǔn)一致,具有最佳的可靠性。同時(shí),還可以考查考生的實(shí)際動(dòng)手操作能力。</p><p>  1.1 計(jì)算機(jī)等級(jí)考試(二級(jí))</p><p>  全國(guó)計(jì)算機(jī)等級(jí)考試(二級(jí))是教育部考試中心面向社會(huì)推出的一項(xiàng)測(cè)試應(yīng)試者計(jì)算機(jī)應(yīng)用知識(shí)和能力的考試。二級(jí)考試的基本要求是:具有計(jì)算機(jī)的基礎(chǔ)知識(shí);了解操作系統(tǒng)的基本概念,掌握常用操作系統(tǒng)的

18、使用;掌握基本數(shù)據(jù)結(jié)構(gòu)和常用算法,熟悉算法描述工具──流程圖的使用;能熟練地使用一種高級(jí)語(yǔ)言或數(shù)據(jù)庫(kù)語(yǔ)言編寫程序、調(diào)試程序。</p><p>  二級(jí)考試包含的內(nèi)容比較廣泛,有計(jì)算機(jī)的基礎(chǔ)知識(shí),Windows的基本操作,程序設(shè)計(jì)以及數(shù)據(jù)庫(kù)的知識(shí)。以往程序設(shè)計(jì)的語(yǔ)言主要有QBASIC、FORTRAN、Pascal、C以及FOXBASE,其中FOXBASE是數(shù)據(jù)庫(kù)程序設(shè)計(jì)語(yǔ)言,其余四種為高級(jí)語(yǔ)言。每種高級(jí)語(yǔ)言的考試內(nèi)

19、容基本包括該語(yǔ)言的基本結(jié)構(gòu)、基本語(yǔ)句、數(shù)據(jù)類型、運(yùn)算符、表達(dá)式、數(shù)組、函數(shù)、文件等。</p><p>  教育部考試中心新推出了2004版全國(guó)計(jì)算機(jī)等級(jí)考試(NCRE)大綱,對(duì)全國(guó)計(jì)算機(jī)等級(jí)考試的考試科目設(shè)置、考核內(nèi)容、考試形式等實(shí)施調(diào)整。二級(jí)考試新增加了Java、Access、C++三個(gè)科目,逐步停考二級(jí)QBasic和FoxBASE,這些新增科目計(jì)劃將于明年上半年在我省正式推廣。二級(jí)科目名稱進(jìn)一步規(guī)范,根據(jù)應(yīng)用

20、性質(zhì)和科目特點(diǎn)將現(xiàn)有科目劃分成二級(jí)語(yǔ)言程序設(shè)計(jì)(C、C++、Java、Visual Basic、QBasic)和二級(jí)數(shù)據(jù)庫(kù)程序設(shè)計(jì)(FoxBASE、Visual FoxPro、Access)兩類。二級(jí)上機(jī)考試中將取消對(duì)DOS部分的考核,各科目上機(jī)考試運(yùn)行平臺(tái)為:Access 2000、Java JDK 1.4.2、Visual C++ 6.0、Visual Basic 6.0、Visual FoxPro6.0、Turbo C 2.0,除

21、了Turbo C 2.0仍在DOS 5.0以上系統(tǒng)運(yùn)行外,其他均在Windows2000系統(tǒng)上運(yùn)行,對(duì)逐步??嫉娜齻€(gè)科目考試平臺(tái)不作任何改動(dòng)。</p><p>  1.2 考試系統(tǒng)采用的實(shí)現(xiàn)模式</p><p>  在網(wǎng)絡(luò)技術(shù)逐漸滲入社會(huì)生活各個(gè)層面的今天,傳統(tǒng)的考試方式也面臨著變革,而網(wǎng)絡(luò)考試則是一個(gè)很重要的方向。</p><p>  基于數(shù)據(jù)庫(kù)和網(wǎng)絡(luò)應(yīng)用的考試系

22、統(tǒng)有多種實(shí)現(xiàn)技術(shù),可以采用傳統(tǒng)的客戶機(jī)/服務(wù)器(Client/server)模式,也可以采用目前流行的瀏覽器/服務(wù)器(Browser/Web)模式,即基于WEB的方式。</p><p>  所謂Client/server模式,是指把數(shù)據(jù)庫(kù)內(nèi)容(比如試題庫(kù))放在遠(yuǎn)程的服務(wù)器上,在客戶機(jī)上安裝相應(yīng)軟件。Client/server結(jié)構(gòu)在技術(shù)上雖然很成熟,但該結(jié)構(gòu)的程序往往只局限在小型的局域網(wǎng)內(nèi)部,不利于擴(kuò)展。并且,該結(jié)

23、構(gòu)的每臺(tái)客戶機(jī)都需要安裝相應(yīng)的客戶端程序。由于考試系統(tǒng)擁有的用戶量比較多,因此,如果采用該結(jié)構(gòu),系統(tǒng)的安裝與維護(hù)工作比較繁重。同時(shí),由于應(yīng)用程序直接安裝在客戶機(jī),客戶機(jī)直接和數(shù)據(jù)庫(kù)服務(wù)器交換數(shù)據(jù),系統(tǒng)的安全性也受到一定影響。</p><p>  基于WEB的方式其實(shí)是一種特殊的Client/server方式。在這種方式中,客戶端是各種各樣的瀏覽器,瀏覽器作為通用的用戶程序界面,主要提供人機(jī)接口服務(wù),而服務(wù)器則響應(yīng)

24、用戶請(qǐng)求并提供用戶需要的信息。Browser/Web模式采用三層體系結(jié)構(gòu),即包括數(shù)據(jù)庫(kù)服務(wù)器、Web服務(wù)器、客戶瀏覽器三部分。由于采用了互聯(lián)網(wǎng)的相關(guān)技術(shù),Browser/Web結(jié)構(gòu)的系統(tǒng)開放性好,易維護(hù)和擴(kuò)展??蛻魹g覽器只跟Web服務(wù)器交換數(shù)據(jù),數(shù)據(jù)安全性比較高,同時(shí),由于客戶端不需要安裝專用程序,可大大降低運(yùn)行維護(hù)費(fèi)用。當(dāng)然,Browser/Web結(jié)構(gòu)在網(wǎng)絡(luò)安全方面也有其弱點(diǎn)。在Client/server結(jié)構(gòu)中,應(yīng)用程序是在客戶機(jī)上運(yùn)

25、行的獨(dú)立程序,如果這臺(tái)計(jì)算機(jī)安全的話,那么應(yīng)用程序就是安全的。而在Browser/Web結(jié)構(gòu)中,眾多的客戶瀏覽器訪問同一個(gè)Web服務(wù)器,Web服務(wù)器會(huì)成為攻擊活動(dòng)的對(duì)象。</p><p>  基于上述考慮,用Browser/Web模式來設(shè)計(jì)考試系統(tǒng)比較合適,服務(wù)器端采用WEB SERVER+數(shù)據(jù)庫(kù)系統(tǒng)+ASP組件來構(gòu)成考試的應(yīng)用服務(wù)系統(tǒng);客戶端采用瀏覽器來完成考試全過程。所有的系統(tǒng)升級(jí)和更新均只要在服務(wù)

26、器端完成,這樣可較靈活地適應(yīng)考試內(nèi)容的不斷更新,從而減少系統(tǒng)升級(jí)、更新的工作量,同時(shí)可進(jìn)行遠(yuǎn)程系統(tǒng)維護(hù)和管理。</p><p>  第二章 考試系統(tǒng)采用的技術(shù)和運(yùn)行平臺(tái)</p><p>  該考試系統(tǒng)用Microsoft Visual Basic.NET進(jìn)行開發(fā),數(shù)據(jù)庫(kù)采用SQL Server 2000。由于系統(tǒng)采用三層結(jié)構(gòu),即數(shù)據(jù)庫(kù)服務(wù)器、Web服務(wù)器、客戶瀏覽器,為了實(shí)現(xiàn)可用子網(wǎng)內(nèi)的

27、任何一臺(tái)服務(wù)器作為數(shù)據(jù)庫(kù)服務(wù)器的需求,本系統(tǒng)采用Web服務(wù)技術(shù),即把Web服務(wù)裝在Web服務(wù)器中,通過訪問Web服務(wù)來進(jìn)行數(shù)據(jù)庫(kù)的訪問。下面分別對(duì)Microsoft Visual Basic.NET、SQL Server 2000和Web服務(wù)技術(shù)進(jìn)行介紹。</p><p>  2.1 Visual Basic .NET</p><p>  Microsoft Visual Basic.NE

28、T 是 Microsoft Visual Basic 6.0 的后續(xù)版本,它是基于 .NET 框架直接創(chuàng)建的,因此可以使用所有的平臺(tái)特性,并能夠與其他 .NET 語(yǔ)言協(xié)同工作。</p><p>  2.1.1 Visual Basic 6.0</p><p>  Visual Basic 6.0 有限的面向?qū)ο蟮奶匦裕貏e是缺乏繼承,使之不適合于開發(fā)面向?qū)ο蟮募軜?gòu)。正由于這一點(diǎn),對(duì)于某些

29、類型的開發(fā),特別是大型、復(fù)雜應(yīng)用程序的開發(fā),與C++或Java開發(fā)人員相比,Visual Basic 6.0開發(fā)人員會(huì)處于不利的地位。另外,Visual Basic 6.0沒有多線程能力;錯(cuò)誤處理能力差,與其他語(yǔ)言如C++的集成能力差;對(duì)于基于Internet的應(yīng)用程序,沒有生動(dòng)有效的用戶界面等缺點(diǎn)。</p><p>  2.1.2 Visual Basic.NET</p><p>  

30、Visual Basic.NET對(duì)于IT業(yè)來說,它可能是一個(gè)小的前進(jìn),但是對(duì)VB開發(fā)人員來說,它是一個(gè)巨大的進(jìn)步!Visual Basic .NET并不只是向核心技術(shù)添加和修改了技術(shù)特性的VB新版本,它打破了模式的框框!實(shí)際上它是一種新編程語(yǔ)言,基于新的核心技術(shù)——.NET范例。在Visual Basic .NET之中,技術(shù)變化是如此之多,以致VB開發(fā)人員可以與C#,C++和Java開發(fā)人員相競(jìng)爭(zhēng)。</p><p&g

31、t;  在許多方面Visual Basic .NET都與它以前的版本不同。它具有更高的一致性和類型安全級(jí)別。用Visual Basic .NET我們更容易寫出控制性、可讀性很高的代碼。雖然它有時(shí)要求你習(xí)慣于那些編譯時(shí)額外的檢查,但它將在你測(cè)試和調(diào)試時(shí),為你節(jié)約寶貴的時(shí)間。</p><p>  VB.NET的語(yǔ)法與VB 6.0已經(jīng)有了根本性的差別,與其說VB.NET是VB 6.0的升級(jí),不如說VB.NET是C#的B

32、asic版本。由于采用了CLI的結(jié)構(gòu),VB.NET將很難兼容以前的VB 6.0的代碼,大量的VB代碼無法順利地轉(zhuǎn)移到.NET上,不過開發(fā)人員仍然可以在.NET平臺(tái)下,將原有的COM組件進(jìn)行重新包裝,形成.NET平臺(tái)下的Web服務(wù)組件,而且.NET的整個(gè)平臺(tái)、開發(fā)工具的高集成性和友好的開發(fā)環(huán)境還是會(huì)給開發(fā)人員留下深刻印象。在Java領(lǐng)域中,無論是Borland的JBuilder 6,還是Sun的Forte for Java,或是IBM的W

33、ebShpere Studio Application Developer、VisualAge for Java都無法達(dá)到VB. NET的生產(chǎn)效率。</p><p>  2.2 SQL Server 2000</p><p>  SQL Server是一個(gè)功能強(qiáng)大的后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng),它可以幫助各種規(guī)模的企業(yè)用來管理數(shù)據(jù),以可伸縮性的商業(yè)解決方案、強(qiáng)大的數(shù)據(jù)倉(cāng)庫(kù)以及與Microsoft O

34、ffice和Microsoft BackOffice的緊密集成為企業(yè)提供額外的商業(yè)便利,日益為廣大用戶所喜愛。到目前為止,SQL Server 2000是Microsoft公司推出的數(shù)據(jù)庫(kù)管理系統(tǒng)的最新版本。它不但繼承了原來版本的許多優(yōu)點(diǎn),而且又增加了很多更先進(jìn)的功能。</p><p>  Microsoft SQL Server 2000使用了最先進(jìn)的數(shù)據(jù)庫(kù)架構(gòu),具有完全的Web功能,通過對(duì)高端硬件平臺(tái)以及最新

35、的網(wǎng)絡(luò)和存儲(chǔ)技術(shù)的支持,可以為較大的Web站點(diǎn)和企業(yè)級(jí)的應(yīng)用提供很好的解決方案。SQL Server 2000擴(kuò)展了SQL Server 7.0版的性能,并增加了幾種新的功能,使得用戶能夠更方便、更快捷地管理數(shù)據(jù)庫(kù)和開發(fā)應(yīng)用程序。因此它已成為大規(guī)模聯(lián)機(jī)事務(wù)處理(OLTP)、數(shù)據(jù)倉(cāng)庫(kù)和電子商務(wù)應(yīng)用程序的優(yōu)秀數(shù)據(jù)庫(kù)平臺(tái)。</p><p><b>  2.3 Web服務(wù)</b></p>

36、<p>  隨著Internet和網(wǎng)絡(luò)化的日漸成熟,無論是屬于單個(gè)組織的計(jì)算機(jī)還是屬于多個(gè)組織的計(jì)算機(jī)都想通過Internet彼此交流。借助更基本的Internet通信協(xié)議,可能需要幾個(gè)月的時(shí)間和大量的資本開發(fā)自己的系統(tǒng)。而且當(dāng)使用該系統(tǒng)和另一個(gè)組織的系統(tǒng)進(jìn)行通信時(shí),兩個(gè)系統(tǒng)之間的轉(zhuǎn)換也許并不容易,甚至是不可能的,最后得到的只是一團(tuán)糟。過去人們引入分布式架構(gòu)系統(tǒng)以解決這個(gè)問題。大多數(shù)系統(tǒng)本身的缺點(diǎn)甚至妨礙了它們?cè)谄髽I(yè)范圍內(nèi)

37、的部署,更別說在全球的部署。為此帶來了Web服務(wù)。</p><p>  2.3.1 Web服務(wù)的概念</p><p>  從表面上看,Web服務(wù)就是一個(gè)應(yīng)用程序,它向外界暴露出一個(gè)能夠通過Web進(jìn)行調(diào)用的API。這就是說,你能夠用編程的方法通過Web來調(diào)用這個(gè)應(yīng)用程序。Web服務(wù)內(nèi)在的含義是基于XML的通信流通過HTTP協(xié)議在一個(gè)公共網(wǎng)絡(luò)(Internet)上傳送。Web服務(wù)平臺(tái)是一套標(biāo)準(zhǔn)

38、,它定義了應(yīng)用程序如何在Web上實(shí)現(xiàn)互操作性。你可以用任何你喜歡的語(yǔ)言,在任何你喜歡的平臺(tái)上寫Web 服務(wù) ,只要我們可以通過Web服務(wù)標(biāo)準(zhǔn)對(duì)這些服務(wù)進(jìn)行查詢和訪問。</p><p>  2.3.2 Web服務(wù)的優(yōu)點(diǎn)</p><p>  Web服務(wù)最大的特性也許是使用XML支持的跨平臺(tái)的兼容性。即使我們假設(shè)一個(gè)組織內(nèi)部使用的都是相同的操作系統(tǒng)、軟件等,我們也不可能期望其他的組織使用相同的設(shè)

39、備。而Web服務(wù)不作此類的要求, 它不依賴于任何平臺(tái)或公司。它的部分吸引力在于,不管是在Solaris,UNIX,Mac還是在Windows上部署Web服務(wù),所有用戶都可以連接并使用。這和一般Web站點(diǎn)是一樣的,不必關(guān)心要訪問的Web站點(diǎn)運(yùn)行于什么平臺(tái),只要它能夠正常工作就行。</p><p>  Web服務(wù)需要使用一種平臺(tái)中立的方法來描述數(shù)據(jù)和交換數(shù)據(jù),為此它使用XML(可擴(kuò)展標(biāo)記語(yǔ)言)。XML使用標(biāo)準(zhǔn)化的文本

40、格式以一種簡(jiǎn)單的方法格式化數(shù)據(jù)(無論數(shù)據(jù)有多復(fù)雜)。最初,開發(fā)人員對(duì)XML嗤之以鼻,認(rèn)為它只不過是書寫腳本的另一種方式而已。然而這些慣于從事數(shù)據(jù)庫(kù)管理和開發(fā)的開發(fā)人員不久便意識(shí)到,XML是能在雙方之間提供數(shù)據(jù)而無須依賴于專門方案的一種技術(shù)。</p><p>  2.4 .NET對(duì)Web服務(wù)的支持</p><p>  .NET從一開始就深深打上了Web服務(wù)技術(shù)的烙印,在它的市場(chǎng)推廣活動(dòng)中,無

41、時(shí)無刻不凸顯其作為Web服務(wù)的開發(fā)和部署平臺(tái)的特征??梢哉f,.NET天生就是為Web服務(wù)準(zhǔn)備的開發(fā)和部署平臺(tái)。</p><p>  .NET是一個(gè)全新的架構(gòu),它的整個(gè)平臺(tái)、開發(fā)工具的高集成性和友好的開發(fā)環(huán)境給開發(fā)人員留下深刻印象。在Java領(lǐng)域中,任何一種語(yǔ)言都無法達(dá)到VS .NET的生產(chǎn)效率。開發(fā)工具是.NET的一大優(yōu)勢(shì)。.NET正是為進(jìn)行基于Web服務(wù)模型的應(yīng)用程序開發(fā)而度身定做的新一代開發(fā)工具和基本結(jié)構(gòu)。.

42、NET構(gòu)建塊服務(wù)、新增的.NET設(shè)備支持以及即將到來的.NET用戶體驗(yàn),使人們能夠充分利用Web服務(wù)模型,如愿以償?shù)亻_發(fā)出新一代應(yīng)用程序。</p><p>  VB.NET平臺(tái)內(nèi)建了對(duì)Web服務(wù)的支持,包括Web服務(wù)的構(gòu)建和使用。與其它開發(fā)平臺(tái)不同,使用.NET平臺(tái),你不需要其他的工具或者SDK就可以完成Web服務(wù)的開發(fā)了。.NET Framework本身就全面支持Web 服務(wù),包括服務(wù)器端的請(qǐng)求處理器和對(duì)客戶端

43、發(fā)送和接受SOAP消息的支持。利用Visual Studio.Net,你可以不必了解HTTP、XML、SOAP、WSDL等底層協(xié)議,同樣能開發(fā)和使用Web服務(wù)。</p><p>  2.5 考試系統(tǒng)的運(yùn)行平臺(tái)</p><p>  2.5.1 硬件平臺(tái)</p><p>  Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器可共用一臺(tái)或分別用一臺(tái)專用服務(wù)器或高檔PC機(jī),聯(lián)網(wǎng)設(shè)備可采用交換機(jī)或H

44、UB,帶寬為10M--100M。</p><p>  2.5.2 軟件平臺(tái)</p><p><b>  操作系統(tǒng)</b></p><p>  服務(wù)器端采用Windows 2000 SERVER ,客戶端采用Windows即均可。</p><p><b>  Web服務(wù)器</b

45、></p><p>  目前,市場(chǎng)上有很多Web服務(wù)器軟件,如IIS、Netscape Enterprise Server、Apache等,各有千秋,其中微軟的IIS 具有對(duì)系統(tǒng)硬件要求低、功能強(qiáng)、配置簡(jiǎn)便且與Windows 緊密集成等優(yōu)點(diǎn),比較適合各院校和中學(xué)的網(wǎng)絡(luò)硬、軟件環(huán)境,因此我們選用IIS 5.0。 </p><p&g

46、t;<b>  數(shù)據(jù)庫(kù)服務(wù)器</b></p><p>  數(shù)據(jù)庫(kù)服務(wù)器與 Web服務(wù)器應(yīng)有較緊密的結(jié)合,Windows 、IIS均為微軟的產(chǎn)品,其數(shù)據(jù)庫(kù)也有相應(yīng)的產(chǎn)品,即SQL Server,所以我們選用SQL Server 2000 為數(shù)據(jù)庫(kù)服務(wù)器。 </p><p><b>  瀏覽器

47、</b></p><p>  IE瀏覽器(建議版本5.5以上)</p><p>  第三章 考試系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)、構(gòu)成模塊及特點(diǎn)</p><p>  3.1 考試系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p>  考試系統(tǒng)離不開數(shù)據(jù)庫(kù)系統(tǒng)的支持,不論是試題、答案,還是考生信息都需要存放在數(shù)據(jù)庫(kù)中,而且數(shù)據(jù)庫(kù)獨(dú)立于程序而存在,具有較好的安全性。

48、本系統(tǒng)使用的數(shù)據(jù)庫(kù)軟件為SQL Server 2000。首先建立一名為ksxt的數(shù)據(jù)庫(kù),主要表格介紹如下:</p><p>  3.1.1 考生信息表(stuinfo)</p><p>  該表主要存放考生的信息,其中Id表示考生的準(zhǔn)考證號(hào);Name表示考生的姓名;State表示考生狀態(tài),分為三種:已交卷、未交卷(正在考試中)、缺考??忌卿浀臅r(shí)候輸入準(zhǔn)考證號(hào),從該表中檢查是否存在該準(zhǔn)考證

49、號(hào),如果存在,顯示該考生姓名,允許進(jìn)入考試界面;否則顯示“無此考生”。State字段有助于統(tǒng)計(jì)缺考人數(shù)。</p><p>  3.1.2 各類試題表(xuanze,tiankong,panduan,chengxtk,chengxts,chengxsj)</p><p>  主要包括選擇題表、判斷題表、概念填空題表、程序填空題表、程序調(diào)試題表、程序設(shè)計(jì)題表共6張表,每張表中存放了各類試題的題

50、號(hào)和題目。下面以程序設(shè)計(jì)題表為例說明:</p><p>  其中TH表示該試題在第幾套題目中;XTH表示該試題的題號(hào),即這套題目中的2個(gè)程序設(shè)計(jì)題中的第幾題;TM表示該試題的題目描述;Ole字段存放的為考試時(shí)要讀出來,解壓,供考生下載的壓縮文件。如果是選擇題表,還有A、B、C、D四個(gè)字段分別表示該試題四個(gè)選項(xiàng)的內(nèi)容。除了程序設(shè)計(jì)題以外,其他試題表沒有Ole字段。之所以設(shè)TH字段,是因?yàn)樵囶}是按套分的,每一套中又有

51、若干題目。每套中的題目事先就定好的,但是每次抽到該套題目時(shí),試題的順序是打亂的,以減少出現(xiàn)一模一樣試卷的概率。</p><p>  3.1.3 考試信息表(testresult01—testresult99)</p><p>  考試信息表共有99張,根據(jù)考生準(zhǔn)考證號(hào)后兩位來決定把該考生的考試信息放入哪張表中,比如該考生準(zhǔn)考證號(hào)末兩位為28,則放入表testresult28中。其中Id表示

52、考生的準(zhǔn)考證號(hào);Xuanzth、pandth、Tiankth、Chengxtkth、Chengxtsth、Chengxsjth分別表示選擇題、判斷題、概念填空題、程序填空題、程序調(diào)試題、程序設(shè)計(jì)題的題號(hào);Xuanzda、pandda、Tiankda、Chengxtkda、Chengxtsda、Chengxsjda分別表示選擇題、判斷題、概念填空題、程序填空題、程序調(diào)試題、程序設(shè)計(jì)題的正確答案。Lasttime用于記錄考試時(shí)間,如果時(shí)間到

53、了還沒有交卷,則回收答案,停止考試。</p><p>  3.1.4 回收表(reclaim,result)</p><p>  回收表共有兩張,一張記錄回收的答案,另一張記錄回收是否成功。</p><p><b>  表1</b></p><p>  這張表主要用來記錄回收的答案,其中Xuanzth、Pandth、Ti

54、ankth、Chengxtkth、Chengxtsth、Chengxsjth分別表示選擇題、判斷題、概念填空題、程序填空題、程序調(diào)試題、程序設(shè)計(jì)題的題號(hào),Xuanzda、Pandda、Tiankda、Chengxtkda、Chengxtsda、Chengxsjda分別表示考生的選擇題、判斷題、概念填空題、程序填空題、程序調(diào)試題、程序設(shè)計(jì)題的答案,可與考試信息表中各題的正確答案做比較。</p><p><b&

55、gt;  表2</b></p><p>  這張表主要用來判斷回收是否成功。其中Id表示考生的準(zhǔn)考證號(hào);Name表示考生的姓名;Xuanze、Pand、Tiank、Chengxtk、Chengxts、Chengxsj分別表示選擇題、判斷題、概念填空題、程序填空題、程序調(diào)試題、程序設(shè)計(jì)題是否回收成功,如果成功,則為OK,否則為空。</p><p>  3.1.5管理表(setti

56、ng)</p><p>  其中Dbname表示數(shù)據(jù)庫(kù)名稱;Servername表示服務(wù)器名稱;Sqlpwd表示SQL Server服務(wù)器密碼;Testdir表示考試目錄;Testtype表示考試類型;Relaimdir表示回收目錄;redopwd表示重做密碼。有些考生考試時(shí)可能會(huì)因?yàn)檎`操作而退出了系統(tǒng),這時(shí)候要再次進(jìn)入系統(tǒng)進(jìn)行考試,就需要輸入密碼,以防止作弊行為。重做密碼是在考生第一次進(jìn)入系統(tǒng)時(shí)從該表中獲得的。

57、 </p><p>  3.2 考試系統(tǒng)的構(gòu)成模塊</p><p>  該考試系統(tǒng)主要有6個(gè)模塊構(gòu)成,包括題庫(kù)管理模塊、身份驗(yàn)證模塊、各類試題模塊、監(jiān)考管理模塊、閱卷模塊、缺考統(tǒng)計(jì)模塊。各模塊關(guān)系如圖1所示。下面分別介紹這6個(gè)模塊。</p><p><b>  圖1</b></p><p>  3.2.1 題庫(kù)管理模塊

58、</p><p>  題庫(kù)管理模塊實(shí)現(xiàn)了試題管理與試卷形成功能。試題的管理主要包括試題編輯、試題修改。在該考試系統(tǒng)中,預(yù)計(jì)準(zhǔn)備20套選擇題、填空題、判斷題、程序分析題和程序設(shè)計(jì)題,每套的題目都是事先定好的。每套試卷形成時(shí),隨機(jī)抽取各類試題的題號(hào),可能兩次抽到相同題號(hào)試題的概率是比較大的,但每次試題的順序都是打亂的,以減少出現(xiàn)重復(fù)試卷的概率。</p><p>  3.2.2身份驗(yàn)證模塊 &l

59、t;/p><p>  考生登錄系統(tǒng)時(shí),需要輸入準(zhǔn)考證號(hào),根據(jù)準(zhǔn)考證號(hào)到相應(yīng)的數(shù)據(jù)庫(kù)表(這里是“考生信息表”)中查找是否有該考生存在。如果有此準(zhǔn)考證號(hào),表示存在該考生,顯示該考生的姓名;否則提示“沒有該考生信息,請(qǐng)確認(rèn)后重新輸入”。當(dāng)已經(jīng)確認(rèn)存在該考生時(shí),還需要判斷該考生是否第一次進(jìn)入系統(tǒng),如果是第一次,則進(jìn)行組題,抽取題號(hào);如果不是第一次,則進(jìn)入另一個(gè)頁(yè)面,要求輸入重做密碼,直到密碼輸入正確才能進(jìn)入考試界面,并且考試

60、的試題內(nèi)容與順序都和上次進(jìn)入時(shí)的一樣。重做密碼是在考生第一次進(jìn)入系統(tǒng)時(shí)獲得的。流程圖如圖2所示。</p><p>  3.2.3各類試題模塊</p><p><b>  選擇題模塊</b></p><p>  初次進(jìn)入選擇題界面時(shí),顯示第一個(gè)題目的內(nèi)容??梢杂谩吧项}”、“下題” 按鈕來選擇不同的題目,在選擇“上題”或“下題”前,先要記錄下本題的

61、答案(在客戶端執(zhí)行)??梢杂谩氨4妗卑粹o來上傳答案,即把考生的答案寫入回收表reclaim中(在服務(wù)器端執(zhí)行)。</p><p>  2)判斷題模塊、概念填空題模塊、程序填空題模塊同上。</p><p><b>  3)程序調(diào)試題模塊</b></p><p>  同樣可以用“上題”、“下題” 按鈕來選擇不同的題目??梢杂谩跋螺d”按鈕來建立程序調(diào)

62、試題存放的文件夾,并下載題目(是一個(gè)壓縮文件);通過“上傳”按鈕把最終結(jié)果上傳到指定的目錄。</p><p>  4)程序設(shè)計(jì)題模塊同上</p><p>  圖2 身份驗(yàn)證流程圖</p><p>  3.2.4監(jiān)考管理模塊 </p><p>  該模塊提供考試用的操作界面,同時(shí)提供考試的操作指南,以供考生參考??忌臏?zhǔn)考證號(hào)、姓名,

63、始終顯示在狀態(tài)欄上,以便監(jiān)考人員查驗(yàn)。 可查詢考生的剩余時(shí)間、交卷否和是否正在考試等狀態(tài)信息,在考試過程中,對(duì)考生的合法性和唯一性進(jìn)行監(jiān)控??忌缬幸蓡?,可以“幫助” 按鈕來解決問題。</p><p>  3.2.5閱卷模塊 </p><p>  對(duì)考生的答案進(jìn)行閱卷評(píng)分。目前這塊沒有實(shí)現(xiàn)。</p><p>  3.2.6缺考統(tǒng)計(jì)模塊</p

64、><p>  統(tǒng)計(jì)有多少考生沒有參加考試??赏ㄟ^“考生信息表”中的State字段進(jìn)行統(tǒng)計(jì)。通過這個(gè)字段還可以統(tǒng)計(jì)某一時(shí)刻有多少考生正在考試,有多少以已經(jīng)交卷。</p><p>  3.3 考試系統(tǒng)的特點(diǎn)</p><p>  該考試系統(tǒng)采用三層結(jié)構(gòu),即數(shù)據(jù)庫(kù)服務(wù)器、Web服務(wù)器、客戶瀏覽器。因?yàn)樗窃贗nternet網(wǎng)上進(jìn)行測(cè)試,為了確保Web服務(wù)器安全,要求把數(shù)據(jù)庫(kù)與W

65、eb服務(wù)器分離,也就是說采用子網(wǎng)內(nèi)部的一臺(tái)服務(wù)器作為數(shù)據(jù)庫(kù)服務(wù)器。為了實(shí)現(xiàn)可用子網(wǎng)內(nèi)的任何一臺(tái)服務(wù)器作為數(shù)據(jù)庫(kù)服務(wù)器的需求,該系統(tǒng)采用Web服務(wù)技術(shù),即把Web服務(wù)裝在Web服務(wù)器中,通過訪問Web服務(wù)來進(jìn)行數(shù)據(jù)庫(kù)的訪問。</p><p>  該系統(tǒng)的Web服務(wù)描述如下:</p><p>  ◆ 刪除文件:deletefile(ByVal path As String)</p>

66、<p>  ◆ 獲取文件夾下每個(gè)文件的名稱:getfiles(ByVal foldname As String) As String() </p><p>  ◆ 解壓縮文件:unzipfile(ByVal fname As String, ByVal unzipdir As String)</p><p>  其中fname為要解壓的文件,unzipdir為解壓之后的文件

67、所存放的文件夾</p><p>  ◆ 壓縮文件:Zipfile(ByVal testdir As String, ByVal filename As String)</p><p>  其中testdir為包含壓縮內(nèi)容的文件夾的路徑,filename為生成的壓縮文件名</p><p>  ◆ 寫B(tài)LOB字段,即用二進(jìn)制流寫字段:WriteBlob(ByVal ta

68、ble As String, ByVal field As String, ByVal idnumber As String, ByVal filename As String) As String </p><p>  ◆ 建立程序設(shè)計(jì)文件夾:dochengxsj(ByVal th As String, ByVal xth As String, ByVal testdir As String, ByVal

69、idnumber As String) </p><p>  ◆ 建立回收文件夾:dohuishou(ByVal updir As String, ByVal type As String, ByVal count As String)</p><p>  ◆ 驗(yàn)證是否有該準(zhǔn)考證號(hào)的考生存在:validate(ByVal table As String, ByVal field As St

70、ring, ByVal idnumber As String) As String </p><p>  ◆ 根據(jù)準(zhǔn)考證號(hào),將字符串寫入某一字段:bynumWrfield(ByVal table As String, ByVal field As String, ByVal idnumber As String, ByVal content As String) </p><p>  ◆

71、當(dāng)考生首次進(jìn)入時(shí),為他新建一條記錄,并抽取各類題號(hào):initestnum(ByVal table As String, ByVal idnumber As String, ByVal name As String) As String </p><p>  ◆ 將題目序號(hào)打亂:randomorder(ByVal MaxNumber As Integer) As Integer()</p><p

72、>  ◆ 根據(jù)某兩個(gè)字段的值,獲取第三個(gè)字段的值:getfvalbytwo(ByVal table As String, ByVal field As String, ByVal jugfield1 As String, ByVal jugfield2 As String, ByVal jugcont1 As String, ByVal jugcont2 As String) As String </p><p

73、>  ◆ 判斷某字段是否為空:judgeNull(ByVal table As String, ByVal field As String, ByVal idnumber As String) </p><p>  ◆ 根據(jù)某一字段的值,獲取另一字段的值:getfieldvalue(ByVal table As String, ByVal field As String, ByVal jugfield As

74、 String, ByVal jugcont As String) </p><p>  ◆ 以二進(jìn)制流的方式讀取ole字段的內(nèi)容:readblob(ByVal table As String, ByVal field As String, ByVal th As String, ByVal xth As String, ByVal filename As String) As Byte()</p>

75、<p>  ◆ 讀取某一字段的值(可用于讀取考試狀態(tài)):getteststate(ByVal table As String, ByVal field As String) As String </p><p>  第四章 考試系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)</p><p>  4.1 數(shù)據(jù)庫(kù)操作</p><p>  在該系統(tǒng)中,連接數(shù)據(jù)庫(kù)的方法有兩種,一種是通過

76、SQL查詢(利用SqlConnection類來連接SQL Server 2000),另一種是通過OLEDB技術(shù)(利用OleDbConnection類來連接幾種不同類型的數(shù)據(jù)庫(kù))。前一種方法是專門針對(duì)SQL Server的,后一種方法是為了操作其他數(shù)據(jù)庫(kù),如Access、Foxpro等。當(dāng)然,操作SQL Server也可以用后一種方法,但是這樣做性能比較差。</p><p>  程序調(diào)試題和程序設(shè)計(jì)題在數(shù)據(jù)庫(kù)中是以

77、文件的形式存放的,因此需要用二進(jìn)制流寫或讀字段。在SQL和在Access中兩者操作方式是不一樣的。以讀二進(jìn)制字段為例。</p><p>  4.1.1 在Access中讀二進(jìn)制字段</p><p><b>  主要代碼如下:</b></p><p>  Dim PictureCol As Integer = 0 </p><

78、p>  Dim cn As New OleDbConnection(OleConnection)</p><p>  Dim cmd As New OleDbCommand()</p><p>  cmd.CommandText = "SELECT chengxtsda FROM result WHERE id='" & idnumber &

79、; "'"</p><p>  Dim dr As OleDbDataReader = cmd.ExecuteReader()</p><p><b>  dr.Read()</b></p><p>  Dim b(dr.GetBytes(PictureCol, 0, Nothing, 0, Integer.MaxV

80、alue) - 1) As Byte</p><p>  dr.GetBytes(PictureCol, 0, b, 0, b.Length) </p><p>  Dim fs As New System.IO.FileStream(DestFilePath,IO.FileMode.Create, IO.FileAccess.Write)</p><p>  fs

81、.Write(b, 0, b.Length) </p><p>  4.1.2 在SQL Server中讀取二進(jìn)制信息</p><p><b>  主要代碼如下:</b></p><p>  Dim myconnection As SqlConnection = New SqlConnection(StrConnection)</p>

82、;<p>  Dim myCommand As SqlCommand = New SqlCommand()</p><p>  Dim sqlrd As SqlDataReader</p><p>  myCommand.CommandText = "SELECT " & field & " FROM " & t

83、able & " WHERE id='" & thnumber & "'" </p><p>  sqlrd = myCommand.ExecuteReader(CommandBehavior.SingleRow)</p><p>  Dim bytedata() As Byte</p><

84、p>  While sqlrd.Read()</p><p>  If Not (sqlrd.IsDBNull(0)) Then</p><p>  bytedata = sqlrd.GetValue(0)</p><p>  readblob = bytedata</p><p><b>  End If</b>

85、</p><p>  End While </p><p>  4.2 打亂序號(hào)算法</p><p>  前面提到,每套試卷形成時(shí),隨機(jī)抽取各類試題的題號(hào),同一套試題中的題目每次出現(xiàn)的順序都是不一樣的,即序號(hào)是被打亂的。打亂序號(hào)算法的主要代碼如下:</p><p>  Dim seq, Mainloop, ChosenNumber, n,

86、i As Integer</p><p>  Dim A(MaxNumber), B(MaxNumber) As Integer</p><p>  Dim rnd As New Random() </p><p>  For seq = 1 To MaxNumber</p><p>  B(seq) = seq</p>&l

87、t;p><b>  Next</b></p><p>  For Mainloop = MaxNumber To 1 Step -1</p><p>  ChosenNumber = rnd.Next(1, Mainloop)</p><p>  A(MaxNumber - Mainloop + 1) = B(ChosenNumber)&

88、lt;/p><p>  B(ChosenNumber) = B(Mainloop)</p><p><b>  Next</b></p><p>  randomorder = A</p><p>  4.3 文件的壓縮與解壓縮</p><p>  做程序調(diào)試和程序設(shè)計(jì)題時(shí),需要先下載題目,為一個(gè)壓

89、縮文件,下載時(shí)需要進(jìn)行解壓縮。當(dāng)編程完畢后,需要上傳答案,這時(shí)候又要對(duì)文件進(jìn)行壓縮,再傳到指定目錄。</p><p>  解壓縮文件算法的主要代碼(其中fname為要解壓縮的文件,unzipdir為解壓之后的文件所存放的位置): </p><p>  Dim s As ZipInputStream = New ZipInputStream(File.OpenRead(fname))<

90、/p><p>  Dim theEntry As ZipEntry = s.GetNextEntry()</p><p><b>  Try</b></p><p>  While (theEntry.Size >= 0)</p><p>  Dim directoryName As String = unzipdir

91、 & Path.GetDirectoryName(theEntry.Name)</p><p>  Dim fileName As String = Path.GetFileName(theEntry.Name)</p><p>  Directory.CreateDirectory(directoryName)</p><p>  If (fileName

92、 <> String.Empty) Then</p><p>  Dim streamWriter As FileStream</p><p>  streamWriter = File.Create(directoryName & "\" & fileName) </p><p>  Dim size As Inte

93、ger = 2048</p><p>  Dim data(2048) As Byte</p><p>  While (True)</p><p>  size = s.Read(data, 0, data.Length)</p><p>  If (size > 0) Then</p><p>  strea

94、mWriter.Write(data, 0, size)</p><p><b>  Else</b></p><p>  Exit While</p><p><b>  End If</b></p><p><b>  End While</b></p>&l

95、t;p>  streamWriter.Close()</p><p><b>  End If</b></p><p>  壓縮文件算法的主要代碼(其中testdir指要壓縮文件的位置,filename指壓縮后文件的名字):</p><p>  Dim astrFileNames() As String = Directory.GetFi

96、les(testdir)</p><p>  Dim strmZipOutputStream As ZipOutputStream</p><p>  strmZipOutputStream = New ZipOutputStream(File.Create(filename))</p><p>  REM Compression Level: 0-9</p&

97、gt;<p>  REM 0: no(Compression)</p><p>  REM 9: maximum compression</p><p>  strmZipOutputStream.SetLevel(6)</p><p>  Dim objCrc32 As New Crc32()</p><p>  Dim st

98、rFile As String</p><p>  Dim strFold As String</p><p>  For Each strFile In astrFileNames</p><p>  Dim strmFile As FileStream = File.OpenRead(strFile)</p><p>  Dim abyB

99、uffer(strmFile.Length - 1) As Byte</p><p>  Dim substrfile As String = strFile.Substring(Len(testdir) + 1, Len(strFile) - Len(testdir) - 1)</p><p>  strmFile.Read(abyBuffer, 0, abyBuffer.Length)

100、</p><p>  Dim objZipEntry As ZipEntry = New ZipEntry(substrfile) objZipEntry.DateTime = DateTime.Now</p><p>  objZipEntry.Size = strmFile.Length</p><p>  strmFile.Clos

101、e()</p><p>  objCrc32.Reset()</p><p>  objCrc32.Update(abyBuffer)</p><p>  objZipEntry.Crc = objCrc32.Value</p><p>  strmZipOutputStream.PutNextEntry(objZipEntry)</p

102、><p>  strmZipOutputStream.Write(abyBuffer, 0, abyBuffer.Length)</p><p><b>  Next</b></p><p>  DirSearch(testdir, strmZipOutputStream)</p><p>  第五章 總結(jié)與展望</

103、p><p>  該考試系統(tǒng)基本實(shí)現(xiàn)了考生登錄、自動(dòng)組卷、做題、回收答案等功能,但是沒有實(shí)現(xiàn)閱卷功能。其中自動(dòng)組卷是采用了一種算法來打亂每套試題的題目順序(算法見4.2),而不是將題庫(kù)中的題目隨機(jī)組合成一套試卷。雖然采用前一種方法,出現(xiàn)相同試卷的概率很小,但是還是不及后一種方法完善。如果采用后一種方法,除了能隨機(jī)抽取題目外,還必須要保證每套試卷的知識(shí)點(diǎn)分布均勻,難度相同,要做到這一點(diǎn)并不容易。但是我認(rèn)為,一個(gè)好的生成試

104、卷算法是應(yīng)該這樣的。</p><p>  基于Web技術(shù)的考試系統(tǒng)易用、靈活,也具有良好的安全性,由于采用了大型的數(shù)據(jù)庫(kù)系統(tǒng),所以試題、答案也具有較好的安全性,它為進(jìn)一步開展計(jì)算機(jī)考試提供了有利的幫助,具有較好的社會(huì)效益。 </p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 侯戓,《.NET Web服務(wù)入門經(jīng)典》,清華大

105、學(xué)出版社,2003</p><p>  [2] 康博譯,《VB.NET高級(jí)編程》,清華大學(xué)出版社,2003</p><p>  [3] 郁紅英、馮庚豹,《Visual Basic.NET 語(yǔ)句與函數(shù)全》,電子工業(yè)出版社,2002</p><p>  [4] 唐樹才等,《Visual.Basic.NET程序設(shè)計(jì)與應(yīng)用》,電子工業(yè)出版社,2002.7</p>

106、<p>  [5] 李振格等,《SQL Server 2000與Visual.Basic.NET數(shù)據(jù)庫(kù)》,清華大學(xué)出版社,2002.9</p><p>  [6] 李昆堂,《SQL Server 2000與XML應(yīng)用技術(shù)》,中國(guó)鐵道出版社,2003</p><p>  [7] 陳剛,計(jì)算機(jī)上機(jī)考試系統(tǒng)研究, http://www.mis.com.cn/zengkan2001/

107、p49.htm</p><p>  [8] 朱貴良,宋慶濤,許強(qiáng),基于Web模式的網(wǎng)絡(luò)考試系統(tǒng)安全性研究,計(jì)算機(jī)工程與應(yīng)用,2002,26(3),173--175</p><p>  [9] 涂振宇,王勇,曾王宣,智能組卷算法研究,江西教育學(xué)院學(xué)報(bào),2002年06期</p><p>  [10] Jeffrey Richter,《Programming Applic

108、ations for Microsoft Windows》,Microsoft Press,2000</p><p>  [11] Joseph Bustos 、Karli Watson,《Beginning.NET Web Services using C#》, Microsoft Press,2002</p><p><b>  附錄A:</b></p>

109、;<p><b>  系統(tǒng)使用說明:</b></p><p><b>  1)登錄:</b></p><p>  輸入準(zhǔn)考證號(hào),點(diǎn)擊“確定”,如果正確,則顯示考試姓名,點(diǎn)擊“開考”進(jìn)入系統(tǒng);否則不能進(jìn)入系統(tǒng),直到輸入正確的準(zhǔn)考證號(hào)。如果是第一次進(jìn)入,則直接進(jìn)入考試界面;如果不是第一次進(jìn)入,則要求輸入重做密碼,只有密碼正確才能進(jìn)入考試

110、界面。</p><p><b>  2)考試界面:</b></p><p>  可以在該界面上選擇要做的題目:選擇題、判斷題、概念填空題、程序填空題、程序調(diào)試題、程序設(shè)計(jì)題。點(diǎn)擊相應(yīng)的按鈕,可進(jìn)入到相應(yīng)題目的界面。</p><p>  3)選擇題、判斷題、概念填空題、程序填空題:</p><p>  剛進(jìn)入界面時(shí),顯示的

111、是第一題的題目,可以通過“上題”、“下題”按鈕來選擇不同的題目。做完后,通過“保存”按鈕上傳答案,并通過“返回”按鈕返回到考試界面。</p><p>  4)程序調(diào)試題、程序設(shè)計(jì)題:</p><p>  通過“下載”按鈕下載題目。做題時(shí)同樣通過“上題”、“下題”按鈕來選擇不同的題目。做完后通過“上傳”按鈕上傳答案,并通過“返回”按鈕返回到考試界面。</p><p>

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論