[發(fā)明專利]一種可供自動批改的編程訓(xùn)練題目構(gòu)造方法及裝置有效
| 申請?zhí)枺?/td> | 201910696000.2 | 申請日: | 2019-07-30 |
| 公開(公告)號: | CN110633072B | 公開(公告)日: | 2023-01-20 |
| 發(fā)明(設(shè)計)人: | 蘇慶;黃劍鋒;劉添添;李小妹 | 申請(專利權(quán))人: | 廣東工業(yè)大學(xué) |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20;G06F8/30;G09B7/02 |
| 代理公司: | 廣東廣信君達(dá)律師事務(wù)所 44329 | 代理人: | 楊曉松 |
| 地址: | 510062 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 自動 批改 編程 訓(xùn)練 題目 構(gòu)造 方法 裝置 | ||
1.一種可供自動批改的編程訓(xùn)練題目構(gòu)造方法,其特征在于,包括以下步驟:
構(gòu)造編程訓(xùn)練題的題目說明;
構(gòu)造編程訓(xùn)練題程序,包括:
構(gòu)造一個測試框架模塊,該模塊包含了程序主入口,同時包含了對測試數(shù)據(jù)生成模塊的調(diào)用接口、對標(biāo)準(zhǔn)答案模塊的調(diào)用接口、對待批改答案模塊的調(diào)用接口、以及對輸出結(jié)果比較模塊的調(diào)用接口;
構(gòu)造一個或多個測試數(shù)據(jù)生成模塊,該模塊生成的測試數(shù)據(jù)可以是固定不變的數(shù)據(jù),也可以是受隨機(jī)因素影響的、每次都不重復(fù)的數(shù)據(jù);
構(gòu)造一個標(biāo)準(zhǔn)答案模塊,該模塊是根據(jù)編程訓(xùn)練題的解答思路編寫的程序代碼,以函數(shù)形式存在,可以被測試框架模塊調(diào)用;
構(gòu)造待批改答案模塊,該模塊以函數(shù)形式存在,并且該函數(shù)形式與標(biāo)準(zhǔn)答案模塊中的函數(shù)形式相比,兩者除了函數(shù)名稱不同外,其他函數(shù)信息都相同;
構(gòu)造輸出結(jié)果比較模塊,該模塊將同一測試數(shù)據(jù),分別輸入至標(biāo)準(zhǔn)答案模塊和待批改答案模塊后各自得到的輸出進(jìn)行比較;如果上述兩個模塊的輸出完全一致,這說明對于上述測試數(shù)據(jù),待批改答案的功能與標(biāo)準(zhǔn)答案模塊的功能等價,視為通過本次測試;否則,視為不通過本次測試并進(jìn)入程序調(diào)試模式。
2.如權(quán)利要求1所述的可供自動批改的編程訓(xùn)練題目構(gòu)造方法,其特征在于,所述的編程訓(xùn)練題的題目說明,其介質(zhì)存在形式包括但不限于文檔、圖片、動畫、音頻和視頻;該說明采用自然語言,詳細(xì)描述當(dāng)前編程訓(xùn)練題目的任務(wù)、注意事項、相關(guān)提示以及用戶要實現(xiàn)的函數(shù)的定義。
3.如權(quán)利要求1所述的可供自動批改的編程訓(xùn)練題目構(gòu)造方法,其特征在于,所述的待批改答案模塊一開始建立時,函數(shù)體為空,或者不完整,或者有錯誤;該模塊為用戶可見,用戶可對其進(jìn)行編輯;用戶解題時,將其自行編寫的解題代碼填充于此處,或者修改該模塊中現(xiàn)有代碼。
4.如權(quán)利要求1所述的可供自動批改的編程訓(xùn)練題目構(gòu)造方法,其特征在于,所述的其他函數(shù)信息,包括返回值類型、參數(shù)列表和所屬的類。
5.如權(quán)利要求1所述的可供自動批改的編程訓(xùn)練題目構(gòu)造方法,其特征在于,所述的測試框架模塊還包含其他必要的頭文件、包及資源。
6.一種可供自動批改的編程訓(xùn)練題目構(gòu)造裝置,其特征在于,包括:
題目說明生成模塊,用于構(gòu)造編程訓(xùn)練題的題目說明;
測試框架模塊,包含了程序主入口,同時包含了對測試數(shù)據(jù)生成模塊的調(diào)用接口、對標(biāo)準(zhǔn)答案模塊的調(diào)用接口、對待批改答案模塊的調(diào)用接口、以及對輸出結(jié)果比較模塊的調(diào)用接口;
測試數(shù)據(jù)生成模塊,用于生成測試數(shù)據(jù);所述的測試數(shù)據(jù)可以是固定不變的數(shù)據(jù),也可以是受隨機(jī)因素影響的、每次都不重復(fù)的數(shù)據(jù);
標(biāo)準(zhǔn)答案模塊,該模塊是根據(jù)編程訓(xùn)練題的解答思路編寫的程序代碼,以函數(shù)形式存在,可以被測試框架模塊調(diào)用;
待批改答案模塊,該模塊以函數(shù)形式存在,并且該函數(shù)形式與標(biāo)準(zhǔn)答案模塊中的函數(shù)形式相比,兩者除了函數(shù)名稱不同外,其他函數(shù)信息都相同;
輸出結(jié)果比較模塊,該模塊將同一測試數(shù)據(jù),分別輸入至標(biāo)準(zhǔn)答案模塊和待批改答案模塊后各自得到的輸出進(jìn)行比較;如果上述兩個模塊的輸出完全一致,這說明對于上述測試數(shù)據(jù),待批改答案的功能與標(biāo)準(zhǔn)答案模塊的功能等價,視為通過本次測試;否則,視為不通過本次測試并進(jìn)入程序調(diào)試模式。
7.如權(quán)利要求6所述的可供自動批改的編程訓(xùn)練題目構(gòu)造裝置,其特征在于,當(dāng)編程訓(xùn)練題通過所述的構(gòu)造裝置構(gòu)造完成后,在在線教育系統(tǒng)中上線,供用戶進(jìn)行編程訓(xùn)練答題,答題過程包括:
(1)用戶登錄在線教育系統(tǒng)后,打開某一道編程訓(xùn)練題,并閱讀編程訓(xùn)練題的題目說明;
(2)用戶填寫或修改待批改答案模塊:
用戶根據(jù)題意并進(jìn)行思考,如果題目類型為程序設(shè)計題或者填空題,則填入自行編寫的代碼;如果題目類型為改錯題,則修改該模塊中已有的代碼;
(3)編譯編程訓(xùn)練題程序,如果未通過編譯,則返回上一步;
(4)運行編程訓(xùn)練題程序,調(diào)用測試數(shù)據(jù)生成模塊,生成測試數(shù)據(jù);
(5)以上述測試數(shù)據(jù)作為輸入,調(diào)用標(biāo)準(zhǔn)答案模塊,得到標(biāo)準(zhǔn)輸出;
(6)以上述測試數(shù)據(jù)作為輸入,調(diào)用待批改答案模塊,得到用戶輸出;
(7)比較標(biāo)準(zhǔn)輸出和用戶輸出是否一致,如果不一致,則進(jìn)入程序調(diào)試模式,并通知用戶未通過以當(dāng)前測試數(shù)據(jù)為輸入的測試,需要進(jìn)行程序調(diào)試;
(8)檢查是否完成所有測試;如果已完成所有測試,則結(jié)束編程訓(xùn)練題程序的運行;否則返回第(5)步。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廣東工業(yè)大學(xué),未經(jīng)廣東工業(yè)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910696000.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





