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

基于HUSTOJ的高級語言考試系統(tǒng)的設計與實現(xiàn)

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

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

1 引言

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

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

2 HUSTOJ的分析

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

2.1 判題源碼分析

2.1.1 服務進程源碼分析

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

2.1.2 判題進程源碼分析

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

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

HUSTOJ數(shù)據(jù)庫共有17張數(shù)據(jù)表。中本系統(tǒng)調(diào)用的最主要數(shù)據(jù)表是記錄題目提交運行相關信息的表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)模塊設計

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

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

4.1 用戶登錄驗證模塊

首先輸入正確的姓名、密碼,并選擇相應的身份,然后單擊登錄按鈕即可。如果輸入無誤,則進入相應界面,否則顯示錯誤提示信息。

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

4.2.1 教師管理

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

4.2.2 學生管理

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

4.2.3 題庫管理

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

4.3 教師模塊

4.3.1 人工組卷

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

4.3.2 人工閱卷

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

4.3.3 試卷分析

選中條件信息(學號、試卷編號、題目編號)進行查閱試卷。在選中試卷條件之后單擊“查詢”,可以得到相應學號、試卷編號、題目編號、得分、該題平均分以及排名統(tǒng)計信息。

4.3.4 試卷查詢

選中試卷條件信息(試卷編號、題目編號編號)進行查詢。在選中試卷條件之后單擊“查詢”,可以得到相應試卷編號、題目編號、試卷名稱、題目內(nèi)容和刪除信息。如果教師對該每一題目不滿意欲刪除,則可以通過單擊左鍵“刪除”來達到目的。

4.3.5 成績查詢

選中條件信息(學號、試卷編號)進行查閱。在選中條件之后單擊“查詢”,可以得到相應學號、試卷名稱、題目編號、得分、平均分信息。

4.4 學生模塊

4.4.1 進入考試

單擊導航欄中的“進入考試”鏈接,顯示信息分為兩部分:功能區(qū)以及信息區(qū)。功能區(qū)位于上方。學生選擇試卷編號并單擊“進入考試”按鈕進入答題頁面。而信息區(qū)域顯示勵志故事,旨在激勵學生。答題頁面是本次考試試卷全部內(nèi)容。每一道題目由題號、題目內(nèi)容、題型和考生答案四部分構成??荚囋凇翱忌鸢浮敝刑顚懘鸢负髥螕繇撁嫦路降摹疤峤弧卑粹o即可交卷。本系統(tǒng)采用系統(tǒng)自動閱卷功能,在學生提交答案后系統(tǒng)自動在后臺運行批改程序,在第一時間得到結(jié)果。

4.4.2 成績查詢

選中條件信息(學號、試卷編號)進行查閱。在選中條件之后單擊“查詢”,可以得到相應學號、試卷名稱、題目編號、得分、平均分信息。

5 總結(jié)展望

5.1 總結(jié)

因為基于HUSTOJ的高級語言考試系統(tǒng)是一套能夠?qū)崿F(xiàn)計算機自動批改試卷的高級語言考試系統(tǒng),而本系統(tǒng)的研究重點是在LAMP( Linux + Apache + MySQL + PHP )的框架下,在自動程序判題系統(tǒng)HUSTOJ的基礎上進行自行設計并創(chuàng)建一套高級語言考試系統(tǒng)。可以毫不夸張地說,這是一個新的領域,而我就是一個純粹地探索者——在網(wǎng)絡地幫助下(特別是百度、谷歌等搜索引擎的幫助以及CSDN等網(wǎng)站的幫助),功能基本實現(xiàn)。

5.2 展望

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

(1)美觀性:增強界面美觀設計,使界面更符合大眾對審美的需求;

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

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

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

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

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

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

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

猜你喜歡
進程信息系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
社會進程中的新聞學探尋
民主與科學(2014年3期)2014-02-28 11:23:03
我國高等教育改革進程與反思
Linux僵死進程的產(chǎn)生與避免
主站蜘蛛池模板: 免费在线一区| 精品福利国产| 国产中文在线亚洲精品官网| 性69交片免费看| 亚洲欧美成人影院| 久久综合丝袜长腿丝袜| 亚洲中文字幕久久无码精品A| 国产成人综合在线观看| 老司机久久99久久精品播放| 亚洲无码精彩视频在线观看| 国产成人AV男人的天堂| 亚洲无码在线午夜电影| 亚洲欧美不卡视频| 99re这里只有国产中文精品国产精品 | 最新日韩AV网址在线观看| 麻豆精品在线视频| 欧美亚洲国产精品第一页| 国产亚洲欧美在线中文bt天堂| 国产美女免费网站| 国产成人福利在线| 99热在线只有精品| 国产成在线观看免费视频| 欧美翘臀一区二区三区| 欧美日韩免费在线视频| 国产玖玖玖精品视频| 久久毛片网| 在线观看免费国产| 一级毛片免费观看久| 中文字幕人妻无码系列第三区| 69精品在线观看| 欧美午夜理伦三级在线观看| 天天综合网色中文字幕| 久久国产精品波多野结衣| 人妻中文久热无码丝袜| 国产美女无遮挡免费视频网站 | www亚洲精品| 在线中文字幕网| 亚洲欧美日韩久久精品| 亚洲精品天堂在线观看| 99久久亚洲精品影院| 欧美日韩免费| 亚洲天堂区| 色综合网址| 91成人在线免费观看| 国产美女人喷水在线观看| 午夜成人在线视频| 综合色区亚洲熟妇在线| 欧美特黄一级大黄录像| 国产精品尹人在线观看| 天堂成人在线| 国产精品自在在线午夜区app| 综合天天色| 成人精品在线观看| 欧美日韩精品在线播放| 欧美综合在线观看| 真实国产乱子伦视频| 国产精品亚洲综合久久小说| 波多野结衣在线一区二区| 特级aaaaaaaaa毛片免费视频| 国产高清毛片| 亚洲精品国产综合99| 亚洲视频二| 成年人午夜免费视频| 亚洲欧美日本国产专区一区| 久久久国产精品无码专区| 亚洲日韩图片专区第1页| 成人福利视频网| 麻豆国产原创视频在线播放| 欧美成人午夜影院| 精品国产网站| 日本AⅤ精品一区二区三区日| 伊人久久大香线蕉影院| 伊人久久精品亚洲午夜| 精品一区二区三区水蜜桃| 国产麻豆精品手机在线观看| 欧美日本一区二区三区免费| www.狠狠| 免费人欧美成又黄又爽的视频| 国产玖玖玖精品视频| 婷婷亚洲综合五月天在线| 少妇精品在线| 男女男精品视频|