- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于ACMICPC在线测评系统设计
基于ACMICPC在线测评系统设计
摘要:针对ACM国际大学生程序设计竞赛培训教学中程序评测的需求,开发程序在线测评系统。系统基于Apache服务器,采用PHP和MYSQL数据库技术运行于Windows Sever 2003平台。采用软件工程黑盒测试的思想对用户提交的程序进行测评,系统主要分为三个部分:网站部分,数据库部分及测评部分。数据库部分对系统提供数据存储支持;网站部分则是系统与用户的交互接口;测评部分则是对用户提交程序运行的主要控制部分,它将控制提交程序的运行时间以及内存,并对运行程序的结果进行判断。
关键词: 在线测评;ACM;Apache;PHP
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)22-5004-03
ACM/ICPC国际大学生程序设计竞赛始于1970年,是全球大学生计算机程序能力竞赛活动中最有影响的一项赛事。竞赛是展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的比赛。经过近 30 年的发展,竞赛规模的迅速扩大对阅卷工作的自动化、高效性、合理性和公正性提出了更高的要求,建立一套准确、高效的程序评测系统成为非常迫切的需求。通过对在线评测系统相关知识的学习,以及对目前已有软件系统的功能分析,该文在总结以往系统开发设计经验并结合当今系统发展趋势的基础上,设计了一个基于B/S结构的多用户在线测评系统,允许用户在线提交自己的解题代码,系统自动编译运行给出裁判结果,并根据用户解题数和用时排出名次。
1 需求分析
设计本系统的主要目的是给学习计算机程序设计的学生提高程序设计能力和对ACM/ICPC兴趣浓厚的学生提供一个学习、练习和交流的平台。为了设计出一个高效、稳定、实用的在线测评系统。我们结合程序设计的需要和ACM/ICPC的特点,认为系统应具有以下功能需求:
用户需要认真填写资料进行注册,未注册用户只能浏览不能进行提交或者参与比赛。用户可以通过页面浏览题目,查询题目,找到自己感兴趣或者比较新的题目,然后进行提交。用户做题目时可以选择提交的语言,此系统支持的语言有C++、C、Pascal、Java等。用户可以随时查看自己和他人的提交情况,做了哪道题目、做题结果是AC还是一些常见的错误,如结果错误、运行时间和运行空间超过题目要求运行的时间和空间,以及用户提交时用的是什么语言、提交时间、提交的序号等等。用户可以查看整个做题数的一个排名,做的题目越多排名越在前,若做出同样的题目,则花费时间少的排名靠前。用户可以通过添加比赛用于举行比赛或者考察学生的编程能力。管理员可以对用户信息的进行管理,添加、修改和删除题目或比赛,以及对数据库进行备份。
2 体系结构及技术分析
2.1体系结构
2.2实现技术
本系统采用Apache服务器、MYSQL数据库和PHP技术。
Apache全称为Apache HTTP Server,是一个开放源码的网页服务器。可以在大多数计算机操作系统中运行,是最流行的Web服务器端软件之一。因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache具有简单、快速、多平台性、扩展性和性能稳定等特点,有着非常广泛地应用。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,增加了速度并提高了灵活性。特点:使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性,为多种编程语言提供了API,支持多线程,充分利用CPU资源 ,优化的SQL查询算法,既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中,支持多种存储引擎。
PHP为 PHP: Hypertext Preprocessor的缩写,是一种HTML内嵌式的语言,一种在服务器端执行的嵌入HTML文档的脚本语言。 PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。最重要的是PHP可以用C、C++进行程序的扩展。PHP站点保存的数据一般都存在 MYSQL 数据库里。和MYSQL“关系”非常的好。故采用PHP+MYSQL的配合使用完成此次项目设计。
3 系统设计
3.1 功能设计
用户模块主要包括由用户自行操作的用户注册和登录、更新用户信息的功能及由管理员对用户进行管理的一些操作主要有添加用户、删除用户、更新用户等。
在线评判模块是系统的一个核心, 对于应用层的用户来说主要包括查看竞赛题目、
您可能关注的文档
最近下载
- 必修下教材文言文逐篇过关挖空训练(二)(解析版)-2026年高考语文一轮复习之古诗文(全国通用).pdf VIP
- 必修下教材文言文逐篇过关挖空训练(一)(解析版)-2026年高考语文一轮复习之古诗文(全国通用).pdf VIP
- 天健笔试押题校招.pdf VIP
- XXX电商公司人才盘点方案.ppt VIP
- 学堂在线《《走进心理学》期末考试复习题及答案》作业单元考核答案.docx VIP
- 天健杭州校招面试题目及答案.doc VIP
- YST 848-2012 铸轧铝及铝合金线坯.docx VIP
- 2024-2025学年江苏省苏州市震川、昆山市一中、常熟中学、西交大附中四校高一上学期10月联考数学试题(含答案).pdf VIP
- 必修下教材文言文逐篇过关挖空训练(一)(原卷版)-2026年高考语文一轮复习之古诗文(全国通用).pdf VIP
- 天健校招笔试题库.pdf VIP
文档评论(0)