浅谈校内C语言程序设计大赛对学生学习能力的提升

2021-09-10 06:15张玺
科学与生活 2021年14期
关键词:专业组C语言程序设计

摘 要:随着国内学科竞赛的普及,越来越多的高校开始重视学科竞赛,并以学科竞赛促进教学改革,促进学生学习。许多高校纷纷举办了校内程序设计大赛,促进学生成长成才。本文以成都理工大学工程技术学院为例,浅谈该校为促进《C语言程序设计》课程建设,提高学生学习能力,举办了校内程序设计大赛后对学生学习能力的提升。

关键字:C语言程序设计;竞赛;以赛促教;以赛促学

1 引言

《C语言程序设计》是计算机类专业的专业基础课,也是数据结构、操作系统、其他编程语言课程的前驱课程[1]。一方面,计算机已经在生活、工作的各个领域被广泛应用,需要相关学科的学生能够建立计算机思维,对计算机的应用有一定了解和把握。另一方面,各类比赛都会涉及到计算机的相关应用,以及部分高校也再积极引导学生参加全国计算机等级考试。

2 背景

为了提高学生对《C语言程序设计》课程的兴趣,为了进一步深化C语言教学改革,我校C语言教学团队采用以赛促教,以赛促学模式,举办了我校“青年杯”C语言程序设计大赛。该比赛由学院教务处和电计系联合主办,目前已经举办两届。以赛促教,以赛促学模式需要对课程进行全面的改革[2],一方面,通过强化教师专业技能,改革传统教学,推动课程建设和教育改革,激励教师教学积极性。一方面,通过引导学生积极参与各类程序设计大赛,提升学生编程能力,激发学生学习兴趣。最终,促进师生共同进步。

在比赛中,将教学知识点的实用性和趣味性相结合,更能激发学生学习《C语言程序设计》乃至其他课程的兴趣。让他们在比赛中可以找到自信,知道如何学以致用。并且在课堂教学中,C语言教学团队的老师也会积极鼓励学生参加各类程序设计比赛,给他们介绍相关比赛的情况,做一个正向的,积极的引导。在教学中,将历年蓝桥杯,天梯赛,ACM的竞赛真题引入到课堂教学中,对真题进行全方位,多角度的分析,让学生能够学以致用,不仅知道知识点是什么,还可以对知识点进行举一反三,融会贯通。

3 校内程序设计大赛

“青年杯”以个人赛为主,分为专业组和非专业组。专业组为本校电计系学生,参加该组比赛的选手至少需要掌握C语言编程、数据结构、基础算法等相关专业知识。不仅需要完成指定任务的程序,而且对程序的时间效率和空间效率都有一定的要求。非专业组为本校非电计系学生,参加该组比赛的选手至少需要掌握基本的C语言编程、计算机基础理论。针对专业组的命题主要考察学生的算法分析与设计能力,强化编程能力,对专业知识的要求较高。针对非专业组的命题主要以全国计算机等级考试二级中的C语言程序题作为知识点[3]。

“青年杯”比赛采用线上赛,判题系统由成理工程评测平台支撑。针对专业组,采用ACM- ICPC赛制,以提交成功的题目数量和罚时数进行排名。针对非专业组,采用OI赛制,以提交成功的题目数量和通过的用例数进行排名。

為了进一步推动《C语言程序设计》的课程改革,把握学生参加“青年杯”的收获情况。C语言教学团队发布了“青年杯”问卷调查,该问卷目标人群是第二届参赛学生,通过调查学生对比赛题型难易度,比赛成效,比赛收获等,分析“青年杯”在以赛促教和以赛促学中的效果。本次问卷调查提交有效问卷129份。

针对学生是否会在赛前刷题准备,通过问卷调查有79%的同学选择会,21%的同学选择不会。针对学生是否愿意参加下一届比赛,通过问卷调查有91%的同学选择会,9%的同学选择不会。针对赛后学生编程能力是否有提高,通过问卷调查有89%的同学选择有,11%的同学选择没有。

“青年杯”已经举办两届,每届报名人数都稳定在170人左右,涉及的院系和专业逐渐增加,可见其影响力也越来越大。“青年杯”两届数据分析如表1所示。

4 校内程序设计大赛的作用

1、有利于学校人才队伍的建设和发展,有利于教师在教学中因材施教,深化教学改革。针对不同专业的学生,有针对性的设计教学大纲,把握不同的难点和重点。特别是针对专业组,比赛的知识点涵盖范围广,有简单的C语言程序设计题,有数据结构的相关知识点如图论,排序,二叉树等等,还有算法的相关知识点如动态规划,贪心技术,分治法等等。综合性的考察了学生的编程能力和相关知识的理解与把握能力。比赛结束后,对每道题的提交成功率进行分析,权衡重点和难点知识,在后期的教学中动态调整教学大纲,让学生能更好的把握重点和难点知识。

2、有利于提高学生的学习积极性和主动性,促使我校学生主动去创新和实践,提升编程能力和算法分析与设计能力,做到以赛促学,以赛促教。为了调动学生参赛的积极性,“青年杯”在比赛奖励这一块也投入巨大,针对一等奖、二等奖、三等奖不仅定制获奖证书凸显比赛的权威性和重要性,而且获奖奖品的质量和数量也逐年增加就是为了让学生主动的参与到比赛中来,体会比赛的乐趣。

3、以比赛为载体,挖掘优秀的学生,并引导学生去更大的舞台展现自己,如各类省级程序设计大赛,为他们的脱颖而出创造条件。比赛结束后,C语言教学团队的老师也会挑选部分优秀的学生,了解他们课下自我学习的情况,并给予一定的算法分析与设计方面的指导,有针对性的去引导他们参加其他类比赛,如蓝桥杯,天梯赛,ACM等。让他们在比赛中收获自信,在比赛中越战越勇,成长自己。

5 总结

校内程序设计大赛的举办,一方面可以不断完善教师的教学思路,改变教学方法[4],因材施教,因地制宜。另一方面可以不断强化学生编程能力,让学生学以致用,提高专业归属感。以赛促教,以赛促学模式能进一步促进我校学风建设,让学生爱上学习爱上竞赛。

参考文献:

[1]徐新爱.基于学科竞赛的《C语言程序设计》课程教学改革研究[J].西南师范大学学报(自然科学版),2015年09期:224-228.

[2]谢光.赛教融合的高校计算机专业课程教学模式改革探究[J].教学研究,2019年08期:86-88.

[3]张玺. 第二届“青年杯”C语言程序设计大赛开赛啦[Z].四川乐山:成都理工大学工程技术学院电子信息与计算机工程系,2020年.

[4]杨爽,侯绍刚等.“以赛促学”在工科院校教学模式改革中的探索与实施[J].山东化工,2019年08期:193-195.

作者简介:

(1992—),男,助教,硕士,主要研究方向为:教学改革。

猜你喜欢
专业组C语言程序设计
基于OBE的Java程序设计个性化教学研究
项目化教学在Python程序设计课程中的应用
C++程序设计课程教学改革研究
医学专业“Python程序设计”课程教学改革总结与思考
“C语言程序设计”课程混合教学探索
海南
基于C语言的计算机软件编程技术探究
中职C语言单片机课堂教学中的趣味性探讨
计算机原理中C语言的应用价值
2016IPA年度国际摄影奖最佳表现作品选登