999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于HUSTOJ的高級(jí)語(yǔ)言考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2018-04-27 11:51:38卜明磊浙江廣廈建設(shè)職業(yè)技術(shù)學(xué)院
數(shù)碼世界 2018年4期
關(guān)鍵詞:進(jìn)程信息系統(tǒng)

卜明磊 浙江廣廈建設(shè)職業(yè)技術(shù)學(xué)院

1 引言

自第一臺(tái)計(jì)算機(jī)誕生至今,短短數(shù)十載,信息時(shí)代已然改變?nèi)藗兩a(chǎn)生活方式。本課題就是設(shè)計(jì)并實(shí)現(xiàn)一套基于HUSTOJ的高級(jí)語(yǔ)言考試系統(tǒng)。HUSTOJ遵守GPL協(xié)議,其開(kāi)源的特性有利于實(shí)現(xiàn)代碼的二次開(kāi)發(fā)并能為本系統(tǒng)所用。

通過(guò)本高級(jí)語(yǔ)言考試系統(tǒng),管理員可以對(duì)教師、學(xué)生和題庫(kù)進(jìn)行管理,教師可以根據(jù)具體情況從已有題庫(kù)中選擇所需題目進(jìn)行人工組卷,也可對(duì)已有試卷進(jìn)行查看,更也可以查看每次考試的統(tǒng)計(jì)信息,而這些統(tǒng)計(jì)信息是計(jì)算機(jī)自動(dòng)運(yùn)用數(shù)學(xué)知識(shí)運(yùn)算所得,即高效又準(zhǔn)確。學(xué)生可以通過(guò)考試系統(tǒng)完成在線評(píng)測(cè)并第一時(shí)間獲取自己成績(jī),實(shí)時(shí)反饋,促進(jìn)教育教學(xué)良好有序進(jìn)行。

2 HUSTOJ的分析

HUSTOJ作為一個(gè)開(kāi)源在線評(píng)測(cè)系統(tǒng)已經(jīng)被廣泛用于計(jì)算機(jī)程序設(shè)計(jì)比賽和編程能力測(cè)試中。通過(guò)分析它的源代碼我們可以發(fā)現(xiàn),HUSTOJ由core和web兩個(gè)文件組成, web主要用于存放數(shù)據(jù),core主要用于實(shí)現(xiàn)判題功能。其中,core分為三部分:judged(其中最核心部分是服務(wù)進(jìn)程源碼judged.cc)、judge_client(其中最核心部分是判題進(jìn)程源碼judged_client.cc)、sim(其中最核心部分是sim.sh,是一個(gè)第三方軟件,用于檢測(cè)相似度,防止作弊)。這里主要用到了judged和judge_client,因此在判題源碼分析中主要介紹服務(wù)進(jìn)程源碼和判題進(jìn)程源碼。

2.1 判題源碼分析

2.1.1 服務(wù)進(jìn)程源碼分析

服務(wù)進(jìn)程代碼(judged.cc)是由519行C語(yǔ)言編寫(xiě)的源代碼組成,總大小為13.4KB。該源代碼實(shí)現(xiàn)的主要功能在第485行至519行的main函數(shù)中得以表現(xiàn)。首先創(chuàng)建家目錄(默認(rèn)家目錄為home/judge)并進(jìn)入,在確認(rèn)輸入無(wú)誤后創(chuàng)建守護(hù)進(jìn)程,然后在確認(rèn)家目錄無(wú)誤且守護(hù)進(jìn)程尚未運(yùn)行后配置數(shù)據(jù)庫(kù)信息,通過(guò)執(zhí)行SQL語(yǔ)句獲取符合要求的題目標(biāo)記值信息(這里是對(duì)應(yīng)的是題目的主鍵solution_id),之后計(jì)算機(jī)一直處于等待返回信息狀態(tài),一旦接收到對(duì)應(yīng)信號(hào),則立馬結(jié)束判題服務(wù)進(jìn)程,如果進(jìn)程未結(jié)束則表示準(zhǔn)備就緒。接下來(lái)進(jìn)入循環(huán)體,該創(chuàng)建的守護(hù)進(jìn)程就正式成為執(zhí)行題目的判題守護(hù)進(jìn)程并開(kāi)始起作用,直到出現(xiàn)錯(cuò)誤或題目全部已經(jīng)答完。

2.1.2 判題進(jìn)程源碼分析

判題進(jìn)程代碼(judge_client.cc)是由1989行C語(yǔ)言編寫(xiě)的源代碼組成,總大小為70.8KB。獲取題目solution_id并為之編號(hào),在配置數(shù)據(jù)庫(kù)配置信息后驗(yàn)證數(shù)據(jù)庫(kù)是否運(yùn)行正常,結(jié)果(記錄在result中)共有0至13共14種情況,其中, result為4表示AC,即結(jié)果正確,其他數(shù)字對(duì)應(yīng)代表一種出錯(cuò)情況。判題進(jìn)程源碼采用的是沙箱技術(shù),通過(guò)創(chuàng)建一個(gè)虛擬環(huán)境并在其中運(yùn)行,待得出結(jié)果后刪除它。這就保證了系統(tǒng)的安全性。

2.2 數(shù)據(jù)庫(kù)分析

HUSTOJ數(shù)據(jù)庫(kù)共有17張數(shù)據(jù)表。中本系統(tǒng)調(diào)用的最主要數(shù)據(jù)表是記錄題目提交運(yùn)行相關(guān)信息的表solution solution_id,problem_id,user_id,time,memory,in_date,result,language,ip,contest_id,valid,num,code_length,judgetime,pass_rate)和表 source_code(solution_id,source)。

值得注意的是,HUSTOJ數(shù)據(jù)表中不存在外鍵,數(shù)據(jù)的完整性由web中的PHP代碼保證。

3 系統(tǒng)模塊設(shè)計(jì)

4 系統(tǒng)實(shí)現(xiàn)

本考試系統(tǒng)功能分為四大模塊:用戶(hù)登錄驗(yàn)證模塊、系統(tǒng)管理員模塊、教師模塊和學(xué)生模塊。

4.1 用戶(hù)登錄驗(yàn)證模塊

首先輸入正確的姓名、密碼,并選擇相應(yīng)的身份,然后單擊登錄按鈕即可。如果輸入無(wú)誤,則進(jìn)入相應(yīng)界面,否則顯示錯(cuò)誤提示信息。

4.2 系統(tǒng)管理員模塊

4.2.1 教師管理

根據(jù)教師姓名、職稱(chēng)和部門(mén)查詢(xún)教師信息,符合條件的教師信息(教師姓名、密碼、職稱(chēng)、部門(mén))以一張表格形式展現(xiàn),在信息的最后,管理員可以選擇修改該教師信息或刪除該教師信息。

4.2.2 學(xué)生管理

根據(jù)學(xué)生學(xué)號(hào)、姓名、專(zhuān)業(yè)和年級(jí)查詢(xún)學(xué)生信息,符合條件的學(xué)生信息(學(xué)生學(xué)號(hào)、姓名、密碼、性別、專(zhuān)業(yè)、年級(jí))以一張表格形式展現(xiàn),在信息的最后,管理員可以選擇修改該學(xué)生信息功能或刪除該學(xué)生信息

4.2.3 題庫(kù)管理

根據(jù)題目?jī)?nèi)容、題型、知識(shí)點(diǎn)和章節(jié)查詢(xún)題庫(kù)信息,符合條件的題庫(kù)信息(題目?jī)?nèi)容、題型、知識(shí)點(diǎn)、章節(jié))以一張表格形式展現(xiàn),在信息的最后,管理員可以選擇修改該題目或刪除該題目。

4.3 教師模塊

4.3.1 人工組卷

輸入試卷基本信息(試卷名稱(chēng)、考試時(shí)間、選擇題數(shù)量、判斷題數(shù)量、填空題數(shù)量、程序題數(shù)量、選擇題分值、填空題分值、判斷題分值、程序題分值)后單擊提交,進(jìn)入組卷界面。單擊“選擇題”后題庫(kù)中的所有選擇題將顯示,教師可任意選取,不過(guò)必須與試卷基本信息中的題數(shù)相對(duì)應(yīng),否則最終提交將會(huì)無(wú)效。其他還有“填空題”、“判斷題”和“程序題”,于此類(lèi)似。最后,單擊“提交”,在系統(tǒng)提示完成后組卷工作完成。

4.3.2 人工閱卷

從數(shù)據(jù)庫(kù)中選取該教師出的試卷,從中再選取未曾批改過(guò)的題目,將信息(學(xué)號(hào)、試卷編號(hào)、題目編號(hào)、考生答案、參考答案、機(jī)器批閱結(jié)果、是否已核對(duì)、更正)顯示出來(lái)。對(duì)于已核對(duì)的題目,則在“核對(duì)”中打鉤,并作為最終結(jié)果。如果遇到自動(dòng)批改試卷有出路的地方,則在“核對(duì)”中選中之后還需在更正一欄中填入正確得分。

4.3.3 試卷分析

選中條件信息(學(xué)號(hào)、試卷編號(hào)、題目編號(hào))進(jìn)行查閱試卷。在選中試卷?xiàng)l件之后單擊“查詢(xún)”,可以得到相應(yīng)學(xué)號(hào)、試卷編號(hào)、題目編號(hào)、得分、該題平均分以及排名統(tǒng)計(jì)信息。

4.3.4 試卷查詢(xún)

選中試卷?xiàng)l件信息(試卷編號(hào)、題目編號(hào)編號(hào))進(jìn)行查詢(xún)。在選中試卷?xiàng)l件之后單擊“查詢(xún)”,可以得到相應(yīng)試卷編號(hào)、題目編號(hào)、試卷名稱(chēng)、題目?jī)?nèi)容和刪除信息。如果教師對(duì)該每一題目不滿(mǎn)意欲刪除,則可以通過(guò)單擊左鍵“刪除”來(lái)達(dá)到目的。

4.3.5 成績(jī)查詢(xún)

選中條件信息(學(xué)號(hào)、試卷編號(hào))進(jìn)行查閱。在選中條件之后單擊“查詢(xún)”,可以得到相應(yīng)學(xué)號(hào)、試卷名稱(chēng)、題目編號(hào)、得分、平均分信息。

4.4 學(xué)生模塊

4.4.1 進(jìn)入考試

單擊導(dǎo)航欄中的“進(jìn)入考試”鏈接,顯示信息分為兩部分:功能區(qū)以及信息區(qū)。功能區(qū)位于上方。學(xué)生選擇試卷編號(hào)并單擊“進(jìn)入考試”按鈕進(jìn)入答題頁(yè)面。而信息區(qū)域顯示勵(lì)志故事,旨在激勵(lì)學(xué)生。答題頁(yè)面是本次考試試卷全部?jī)?nèi)容。每一道題目由題號(hào)、題目?jī)?nèi)容、題型和考生答案四部分構(gòu)成??荚囋凇翱忌鸢浮敝刑顚?xiě)答案后單擊頁(yè)面下方的“提交”按鈕即可交卷。本系統(tǒng)采用系統(tǒng)自動(dòng)閱卷功能,在學(xué)生提交答案后系統(tǒng)自動(dòng)在后臺(tái)運(yùn)行批改程序,在第一時(shí)間得到結(jié)果。

4.4.2 成績(jī)查詢(xún)

選中條件信息(學(xué)號(hào)、試卷編號(hào))進(jìn)行查閱。在選中條件之后單擊“查詢(xún)”,可以得到相應(yīng)學(xué)號(hào)、試卷名稱(chēng)、題目編號(hào)、得分、平均分信息。

5 總結(jié)展望

5.1 總結(jié)

因?yàn)榛贖USTOJ的高級(jí)語(yǔ)言考試系統(tǒng)是一套能夠?qū)崿F(xiàn)計(jì)算機(jī)自動(dòng)批改試卷的高級(jí)語(yǔ)言考試系統(tǒng),而本系統(tǒng)的研究重點(diǎn)是在LAMP( Linux + Apache + MySQL + PHP )的框架下,在自動(dòng)程序判題系統(tǒng)HUSTOJ的基礎(chǔ)上進(jìn)行自行設(shè)計(jì)并創(chuàng)建一套高級(jí)語(yǔ)言考試系統(tǒng)??梢院敛豢鋸埖卣f(shuō),這是一個(gè)新的領(lǐng)域,而我就是一個(gè)純粹地探索者——在網(wǎng)絡(luò)地幫助下(特別是百度、谷歌等搜索引擎的幫助以及CSDN等網(wǎng)站的幫助),功能基本實(shí)現(xiàn)。

5.2 展望

此次實(shí)現(xiàn)了高級(jí)語(yǔ)言考試系統(tǒng)的基本功能。其主要特色是借助HUSTOJ實(shí)現(xiàn)對(duì)程序的自動(dòng)判題。由于本系統(tǒng)是開(kāi)源系統(tǒng),而且是參照工程化的已有項(xiàng)目搭建完成,所以結(jié)構(gòu)清晰,編程規(guī)范,為以后編程人員解讀代碼或再次開(kāi)發(fā)提供了保障??傊?,對(duì)于本系統(tǒng)的未來(lái)努力方向總結(jié)如下:

(1)美觀性:增強(qiáng)界面美觀設(shè)計(jì),使界面更符合大眾對(duì)審美的需求;

(2)防作弊性:通過(guò)數(shù)學(xué)工具實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)計(jì)算,達(dá)到防作弊的效果;

(3)數(shù)據(jù)表現(xiàn)多樣性:對(duì)于各種統(tǒng)計(jì)信息,實(shí)現(xiàn)數(shù)據(jù)與圖形圖畫(huà)的轉(zhuǎn)換,實(shí)現(xiàn)諸如折線圖、圓餅圖等功能;

(4)安全性:對(duì)于每次用戶(hù)登錄(特別是文本框等數(shù)據(jù)輸入),都要通過(guò)多種手段進(jìn)行安全驗(yàn)證,比如正則表達(dá)式等。

[1]張浩斌.基于開(kāi)放式云平臺(tái)的開(kāi)源在線評(píng)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)科學(xué)2012年增刊,第39 卷第11A 期:339-343,348.

[2]何莉輝,梁滄.基于ACM 國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽的學(xué)習(xí)模式[J].邊疆經(jīng)濟(jì)與文化,2008(6):95-96.

[3]網(wǎng)絡(luò)教育_維基百科[EB/OL]. http://zh.wikipedia.org/wiki/Linux.

[4]車(chē)明洙,紀(jì)洪波.一種基于ACM 程序設(shè)計(jì)競(jìng)賽在線評(píng)測(cè)系統(tǒng)解決方案 [J].微型機(jī)與應(yīng)用,2010(4):11-13.

猜你喜歡
進(jìn)程信息系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
債券市場(chǎng)對(duì)外開(kāi)放的進(jìn)程與展望
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會(huì)信息
社會(huì)進(jìn)程中的新聞學(xué)探尋
我國(guó)高等教育改革進(jìn)程與反思
Linux僵死進(jìn)程的產(chǎn)生與避免
主站蜘蛛池模板: 欧美19综合中文字幕| 日韩精品一区二区三区视频免费看| 欧美一级高清视频在线播放| 91免费片| 国产高潮流白浆视频| 性喷潮久久久久久久久| 亚洲福利视频网址| 韩日午夜在线资源一区二区| 波多野结衣AV无码久久一区| 国产精品黄色片| 麻豆精品视频在线原创| 亚洲 欧美 日韩综合一区| 国产精品三级专区| 精品国产自在在线在线观看| 第一页亚洲| 国产日韩欧美在线视频免费观看| 国产精品黑色丝袜的老师| 亚洲人成在线精品| 原味小视频在线www国产| 成人小视频在线观看免费| 全裸无码专区| 中日韩一区二区三区中文免费视频| 亚洲人成人伊人成综合网无码| 国产精品9| 久久这里只有精品国产99| 亚洲啪啪网| 欧美啪啪一区| 日韩中文欧美| 人人艹人人爽| 亚洲Va中文字幕久久一区| 欧美高清视频一区二区三区| 国产丰满大乳无码免费播放| 国产毛片片精品天天看视频| 欧洲成人免费视频| 久久精品中文字幕少妇| 亚洲精品爱草草视频在线| a在线亚洲男人的天堂试看| 国产成人福利在线视老湿机| 一级全免费视频播放| 国产三级国产精品国产普男人| 中文无码日韩精品| 欧美日韩国产系列在线观看| 九色综合伊人久久富二代| 成年网址网站在线观看| 亚洲欧州色色免费AV| 欧美日韩中文字幕二区三区| 日韩无码真实干出血视频| 色婷婷色丁香| 免费无码在线观看| 国产天天色| 国产无码精品在线播放| 欧美日韩亚洲国产主播第一区| 在线观看亚洲精品福利片| 免费观看无遮挡www的小视频| 免费国产在线精品一区| 美女视频黄又黄又免费高清| 激情综合婷婷丁香五月尤物| 噜噜噜久久| 狠狠干欧美| 97国产在线播放| 在线精品自拍| 国内精品久久久久鸭| 国产最新无码专区在线| 国内视频精品| 国产成熟女人性满足视频| 午夜色综合| 日韩在线播放中文字幕| 一级爱做片免费观看久久| 夜夜拍夜夜爽| 国产成人欧美| 国产人免费人成免费视频| 青青青草国产| 国产精品性| 亚洲精品图区| 国产精品浪潮Av| 欧美成人国产| 亚洲视频一区| 欧美综合中文字幕久久| 亚洲欧州色色免费AV| 国产福利2021最新在线观看| 2019年国产精品自拍不卡| 五月婷婷综合色|