为拓展学生知识面,培养大学生的创新思维和实践动手能力,展示和提高我校大学生的编程技能与计算机应用能力,我校特举办校级程序设计竞赛。竞赛项目分为软件类-Java组、C/C++组、Python组和电子类-嵌入式、单片机。
1、竞赛考查参赛选手的综合技能,试题涉及的知识如下:
(1)Java组
解题所涉及的知识:基本语法、面向对象、网络编程、接口、集合、IO、多线程、内部类、异常与保护、数据结构(高校《数据结构》教材中出现的经典结构,及其通过组合、变形、改良等方法创造出的变种)、大学程度的基本数学知识(含:解析几何、线性代数、微积分、概率)。(不涉及Swing等图形界面,不涉及html、JSP、Tomcat、开源框架等web开发方面知识,不涉及JDBC、SQL等数据库编程方面)。
(2)C/C++组
解题所涉及的知识:结构、数组、指针、标准输入输出、文件操作、递归、数据结构(高校《数据结构》教材中出现的经典结构,及其通过组合、变形、改良等方法创造出的变种)、函数指针、位运算、大学程度的基本数学知识(含:解析几何、线性代数、微积分、概率)。
(3)Python 组
Python 程序设计基础:包含使用 Python 编写程序的能力。该部分不考查选手对某一语法的理解程度,选手可以使用自己喜欢的语句编写程序。
计算机算法:枚举、排序、搜索、计数、贪心、动态规划、图论、数论、博弈论、概率论、计算几何、字符串算法等。
数据结构:数组、对象/结构、字符串、队列、栈、树、图、堆、平衡树/线段树、复杂 数据结构、嵌套数据结构等。
(4)电子组
解题所涉及的知识: C 程序设计基础知识、模拟/数字电子技术基础、MCS-51 单片机基础、MCS-51 单片机程序开发与调试。
2、竞赛形式
个人赛,只赛一场,全程机考;选手机不允许使用本机以外的资源(如USB连接)。竞赛时长为4个小时,采用自动评判系统客观评分,以保证竞赛的公平性和公正性。
全程机器阅卷。必要环节有少量人工介入。
结果填空题:答案唯一。只有0分或满分(格式错误为0分)。
程序填空题:按选手填写的代码代入程序中能否得出正确结果为判据。测试数据与题面中的数据可能不同。只有0分或满分(格式错误为0分)C/C++组选错了编译器类型可能得0分。
编程大题:主要以选手所提交的程序的运行结果为依据。特殊情况会参考选手程序的编码风格、逻辑性、可读性等方面。
多个测试用例单独计分。通过则该用例得分。
C/C++选手选错了编译器类型可能得0分
C/C++选手主程序没有return 0 可能得0分。
Java选手使用了package语句按0分处理。
Java选手主类名字不是Main按0分处理。
Python 程序仅可以使用 Python 自带的库,评测时不会安装其他的扩展库。
3、奖项设置
根据评分系统提交成绩得分评出一、二、三等奖。
奖项的设置根据参赛人数进行适当地调整,获奖者由学校颁发获奖证书,并认定课外学分:获校级一等奖记2学分,二等奖记1.5学分,三等奖记1学分。
4、竞赛对象与竞赛时间
竞赛对象为信息工程学院2016级,2017级,2018级、2019级全体学生以及学校其他有意愿参赛学生,采取自愿报名,学生自行选择Java组、C/C++组、Python组、嵌入式组、单片机组(只能选其中一组参赛)。比赛时间为2019年11月30号 09:00-13:00。比赛地点在临湖轩A4029/A4039/A4059机房。
信息工程学院
2019年11月13日