肇庆学院在线程序自动评测系统简介
“肇庆学院在线程序自动评测系统”(英文名称:Online Program Judge System)是由钟鏸老师主持开发的一套源程序正确性评判系统。
该系统主要服务于两个方面:
1、《高级语言程序设计》《C++程序设计》《数据结构》《算法分析与设计》等课程的作业布置与完成
2、ACM/ICPC竞赛活动的日常训练
以下主要针对课程作业方面作出简单操作说明。
一、系统设计目的
1)程序设计语言类的课程,其目标是让学生掌握该程序设计语言,以便采用该语言编写代码去解决实际问题。因此,建立学生解决问题的能力,是最终培养目标。而语言的语法,仅是该语言的一些规则而已。因此,本系统提供足够数量的习题,让学生动手实验来巩固该语言的语法规则,最终能够使用该语言解决实际问题。
只有通过大量实践,学生才能建立编程解决问题的基本思想和能力。本系统提供了真正有效的实践平台。
2)提高评阅作业的准确率,降低任课老师的工作强度。每一位任课老师面对少则几十个学生,多则上百个学生,一个学生一学期少则需要编写几十份代码,多则上百份代码,如果任课老师做到百分百评阅批改,那工作量是非常巨大的。就算批改50%,工作量也是很大的。
另一方面,同一道题目,每个学生有自己的解题思路、有自己的编程风格、有不同的书写习惯,任课老师手工批阅的话,难免因为疲劳等而产生误判。
本系统能够完全解决以上两个问题,百分之百准确无误地评测学生所提交的没一份代码,无一遗漏。而且没有时间上的限制,学生可以在实验室提交代码,也可以在图书馆、宿舍、家里等任意能够上网的地方提交作业。
任课老师可以随意上网查阅学生的代码,解答学生的各种问题,如语法问题、解题思路问题。
3)精选具有代表性的题目建立习题库
对于《高级语言程序设计》课程,目前本系统主要参考谭浩强、王晓东所著的两本教材,精选其中例题及课后习题,做出相应的测试数据,放在本题库中。题库可以根据需要而增加或修改,不断完善。
已建成《C语言程序设计》习题库(亦可用于C++)、《数据结构》习题库、《算法分析与设计》习题库。
免费分享源码的网址
二、本系统的工作方式
在线程序自动评测系统(Online Program Judge System,以下简称OJ)是一个基于Browser/Server模式的面向程序设计的源代码自动评测系统,其工作原理如下图所示。
在线程序评测系统工作方式
学生阅读OJ上的题目,编写好程序代码,一般在本地机器输入一些运行数据验证后认为无误了,就把代码提交到OJ。OJ一旦接收到提交,就对代码进行编译,如果代码存在语法错误,则把语法错误信息反馈给学生。如果编译正确,则把该题的测试数据重定向给程序、作为程序运行的输入数据。如果程序在运行过程中出错,OJ把运行时错误信息反馈给学生;如果程序没有在规定时间内运行结束(多为程序所用的算法不是最优),那么即使答案可能正确,OJ也把“超时”信息反馈给学生。如果程序运行不超时,且答案也正确,OJ把“正确”信息反馈给学生,并给出其程序运行所用的时间及运行过程中所使用的内存数量,以便做出对比评价。
OJ完成一次代码的评测只需很短的时间,一般情况下只需15秒左右(大多数情况下只需不到3秒)。也就是说,学生可以在很短时间之内知道自己所写的程序是否正确、算法是否最优,并可以马上调整思路修改程序并再次提交代码,直至取得“正确”的反馈。在线程序评测系统的工作效率很高,响应速度很快,学生可以即时得到反馈的结果,且公平公正地对待每一个学生的代码,对每一份代码给出公正的评价。它24小时在线等待学生提交代码,对于提升学习效果很有利。
三、使用手册(简化版)
【进入系统】
1. 校内网用户,通过以下网址访问本系统:
1)学生类用户:172.21.81.30/ZQUOJ
2)教师、教练类用户:172.21.81.30/ZQUOJ/manage(系统自动识别两类用户的身份,提供相应的菜单功能)
2. 校外网用户,首先安装VPN插件(vpn.zqu.edu),然后通过公用用户cs_student(密码:cs_password)登陆进入VPN,如下图所示:
然后点击JudgeOnline(HTTP),如下图所示:
注:通过VPN访问本系统是受到时间限制的,凡超过5分钟没有任何操作,则自动断开VPN链接。此时,可重新登录cs_student账号而继续操作。
3. 进入本系统后首页如下所示:
主页最上部是网站Logo;第二行是网站主菜单;接下来左侧是公告栏news-board,主要放置网站公告文章(由教练类用户维护);右侧是本系统的主要常用功能,简述如下:
Problem:题目列表
Submit:提交题目
Status:提交结果动态列表
Contest:在线竞赛子系统
RankList:解题排名榜
Resources:资源下载板块,用于下载各种学习资料
Article:文章列表
F.A.Q:常见问题列表
【学生类用户使用说明】
1. 注册
系统已为计算机学院新生统一注册账户,账户名统一规格为:
11ABCC,其中:A=1 表示本科计算机科学专业,=2表示本科软件工程专业,=3表示本科网络工程专业,=4表示大专
B=1 表示1班,=2表示2班,以此类推
CC 是顺序号,即学生学号最后两位
密码初始值与账号一致。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。