- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业设计基于acm程序设计竞赛的在线评测系统设计与实现前台网站部分
基于ACM程序设计竞赛的在线评测
系统设计与实现
——前台网站部分
计算机科学与技术专业 学生:吴玉培 指导教师:赵磊
摘 要:随着Internet的广泛应用和计算机技术的飞速发展,计算机算法在其中发挥着极其重要的作用。为了更好地适应这个社会选拔人才的要求,同学们提高程序设计能力的愿望越发强烈,然而人工评测程序的效率还是很低的。因此ACM在线评测系统应运而生了.这个在线评测系统主要由三个大的部分组成,即数据库部分,网站部分,和编译器的调用部分,三个部分紧密地联系在一起。在用户提交解决方案的同时,在服务器端产生源程序,编译部分负责调用源程序,并把结果写入数据库,然后网站部分再通过数据库查询语句把数据库中的结果显示在网页上。
关键词:在线评测;ACM;网站部分
1 概述
1.1 ACM在线评测系统设计背景和研究意义
ACM/ICPC国际大学生程序设计竞赛始于1970年,是全球大学生计算机程序能力竞赛活动中最有影响的一项赛事。ACM国际大学生程序设计竞赛是参赛选手展示计算机才华的广阔舞台,是著名大学计算机教育成果的直接体现,是信息企业与世界顶尖计算机人才对话的最好机会。
ACM国际大学生程序设计竞赛是旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的竞赛。经过近 30 年的发展,ACM 国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。竞赛规模的迅速扩大对阅卷工作的自动化、高效性、合理性和公正性提出了更高的要求,建立一套准确、高效的程序评测系统成为非常迫切的需求。Dreamweaver 8、wamp5。
(1)Dreamweaver 8简介
Macromedia Dreamweaver 8是建立Web站点和应用程序的专业工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合在一起,使得各个层次的开发人员和设计人员都能够快速做出界面吸引人的基于标准的网站和应用程序。语言版本:中文·版本:8中文版Win9x/Me/NT/2000/XP/2003/win7/。ACM编程有兴趣的学生提供一个学习和操练的平台,真正实现一个高效管理和稳定的在线评判系统。结合学习及ACM点,系统具有以下几点功能需求:
(1)用户管理:认真填写资料就可以注册了,未注册用户只能浏览不能进行提交或者参与比赛。
(2)题目浏览:用户可以通过页面浏览题目,查询题目,找到自己感兴趣或者比较新的题目,然后进行提交。
(3)提交:用户做题目时可以选择提交的语言,此系统可以用的语言有C++、C、Pascal、Java等。
(4)查看提交状态:提交情况,越在前面的页面在时间上越靠近现在,反映用户做题目时的提交状态、做哪个题目、AC或者一些常见的错误,比如结果错误、运行时间和运行空间超过题目要求运行的时间和空间,以及用户提交时用的是什么语言、提交时间、提交的序号等等。
(5)查看排名:显示用户做题数的一个排名,做的题目越多,排名越在前,若做出同样的题目,则以提交次数少者排名靠前。
(6)比赛练习:添加比赛用于举行比赛或者考察学生的编程能力。
(7)后台管理:包括用户信息的管理,题目的添加和修改,比赛的添加和修改以及数据库的备份等等。
3 系统可行性分析
此系统从结构的总体上进行划分,可以划分为三个大的模块,即前台网站设计,数据库设计,后台调用评判程序正误的结果。接下来将对上述三大模块的可行性以及服务器的承受力做具体的分析:
前台网站设计的可行性:写前台网站代码的主要语言是PHP语言,这门语言已经发展到了相当成熟的地步,从理论上讲完全可以实现该系统的所有功能,其次,制作本系统所使用的PHP技术也已经是一些非常成熟的技术,并且在相关书籍以及网络论坛上有相关的理论和实例可供参考。
数据库设计的可行性:首先,本系统所采用MYSQL数据库,这个数据库的管理软件已经经过严格的测试,可供本系统完成相关信息的存取工作。其次是对数据库进行读,写,更改的SQL语言已经发展到非常成熟的地步,此外,PHP与MYSQL的连接技术也已经相当成熟,并且在相关书籍以及网络论坛上有相关的理论和实例可供参考。
后台调用评判程序正误的结果的可行性:后台程序代码实现的主要语言是C++,这门语言本身经过开发人员和用户的反复测试,已经变得相当成熟;另外程序实现者对该语言也非常的熟悉,能够运用该语言实现本系统的相关功能模块;此外程序一旦以进程运行起来后,则可以采用Windows所提供的API来对相关的进程进行控制和管理,这位本系统的技术实现提供了可能。并且在相关书籍以及网络论坛上有相关的理论和实例可供参考。
服务器的承受力方面的可行性:从访问规模上讲,由于本系统主要是为校内用户提供程序测评服务,虽然今后也可能为部分互联网用户提供程序测评服务。但是就目前的情况而言,每天
文档评论(0)